일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- Sookmyung Information Security Study
- 기계학습
- 머신러닝
- Javascript
- WarGame
- The Loard of BOF
- 풀이
- hackctf
- hackerrank
- c++
- CSS
- C언어
- BOJ
- Python
- 숙명여자대학교 정보보안동아리
- 백준
- PHP 웹페이지 만들기
- 숙명여자대학교 정보보안 동아리
- 생활코딩
- XSS Game
- 드림핵
- siss
- 자료구조 복습
- 파이썬
- SWEA
- 웹페이지 만들기
- lob
- BOJ Python
- HTML
- c
- Today
- Total
목록2021 SISS 21기 활동/겨울방학 C (8)
혜랑's STORY
# BOJ 13235번 : 팰린드롬 - 풀이 #include #include int palindrome(char x[]){ int len = strlen(x); for(int i=0; iupside_down(n2)) printf("%d", upside_down(n1)); else printf("%d", upside_down(n2)); return 0; } upside_down 함수는 입력받은 수를 newX의 값에 10을 곱하고 10으로 나눈 나머지 값을 더하는 함수로써 상근이 동생처럼 거꾸로 숫자 읽은 값을 구하는 함수이다. 입력받은 두 수를 upside_down 함수를 통해 거꾸로 읽고 두 값을 비교하여 더 큰 값을 출력한다. - 실행결과
#BOJ 4673번 : 셀프 넘버 - 풀이 #include #define MAX 10000 int selfN(int x){ int num = x; while(x!=0){ num += x%10; x /= 10; } return num; } int main(){ int flag[MAX] = {0,}; for(int i=1; i
#BOJ 1316번 : 그룹 단어 체커 - 풀이 #include int check(char x[]){ int flag[26] = {0}; for(int i=0; x[i]; i++){ if(flag[x[i]-'a']){ return 0; } else{ char temp = x[i]; flag[x[i]-'a'] = 1; while(1){ if(temp != x[++i]){ i--; break; } } } } return 1; } int main(){ int n, cnt = 0; char word[101]; scanf("%d",&n); for(int i=0; i= (V-B-1) / (A-B) 따라서 (v-b-1)/(a-b)+1을 출력하면 된다. - 실행결과
# BOJ 2748번 : 피보나치 수 2 - 풀이 #include int main(){ int n; long long fibo[91]; fibo[0] = 0; fibo[1] = 1; scanf("%d",&n); for(int i=2; i=2)는 n-1번째와 n-2번째 수의 합이라는 것을 알 수 있다. 따라서 2번째 피보나치 수를 구하기 위해서는 0번째와 1번재 수가 필요하기 때문에 둘에 미리 값을 넣어 주었다. 그 뒤, n번째 수가 될 때까지 n-1번째와 n-2번째 수를 더해주면 된다. 이때, 주의해야 할 점은 90번째 값이 int 형의 범위를 넘어가기 때문에 범위가 더 큰 long long 형으로 지정해 주어야 한다는 점이었다. - 실행결과 # BOJ 2750번 : 수 정렬하기 - 풀이 #include..
#BOJ 2941번 : 크로아티아 알파벳 - 풀이 #include int main(){ char str[101]; int cnt = 0; scanf("%s", str); for(int i=0; str[i]; i++){ if(str[i] == 'c') if(str[i+1] == '-' || str[i+1] == '=') i++; if(str[i] == 'd'){ if(str[i+1] == '-') i++; else if(str[i+1] == 'z' && str[i+2] == '=') i += 2; } if(str[i] == 'l' || str[i] == 'n') if(str[i+1] == 'j') i++; if(str[i] == 's' || str[i] == 'z') if(str[i+1] == '=') i..
# BOJ 1037번 : 약수 - 풀이 어떤 수 N의 진짜 약수가 "모두" 주어진다고 했다. 즉, 주어진 수들을 정렬 한 뒤, 가장 작은 수와 가장 큰 수를 곱해주면 어떤 수 N을 구할 수 있게 되는 것이다. - 코드 #include #include void mysort(int x[], int n); int main(){ int num; scanf("%d",&num); int* measure = (int*)malloc(sizeof(int)*num); for(int i=0; i= C) printf("-1"); else printf("%d", A/(C - B) + 1); return 0; } - 실행결과
#1 두 개의 문자열 s1, s2를 입력 받고, s1과 s2에 같은 index에 있는 문자들을 비교해서 같으면 O, 다르면 X를 출력하시오. ※조건 문자열의 길이는 모두 30을 넘지 않음 문자 비교 중 공백일 경우 X를 출력함 포인터 사용 - 풀이 문자열1, 문자열2, 인덱스 번호를 파라미터로 가지는 함수 compare()를 만든다. 이 함수는 각 문자열의 인덱스 값을 비교하고 같으면 flag에 1을 대입하고 아니면 초기의 -1값을 반환하도록 하였다. main 함수에서 while문을 둘 중 더 긴 문자열이 끝날때 까지 수행하도록 하기 위하여 두 문자열 중 더 긴 값을 n에 저장해 주었다. while문은 compare을 통해 얻은 값이 1이라면 같은 문자라는 의미이기 때문에 'O'를 출력하고, 아니면 'X..
#BOJ 10809 : 알파벳 찾기 - 풀이 search() 함수는 알파벳이 등장하는 위치를 알아내기 위한 함수이다. 만약 단어의 i번째에 알파벳이 위치한다면, i를 반환하고 그렇지 않으면 초기에 설정해둔 -1값을 반환한다. 알파벳의 처음부터 끝까지 -1 또는 등장하는 위치를 출력해야 하기 때문에 alpha라는 배열에 a-z까지 넣은 배열을 생성하였다. 단어 S를 입력받고 a-z까지 앞에서 만들어둔 search() 함수를 이용하여 위치값 또는 -1을 출력한다. - 코드 #include #include int search(char *x, char y){ int n = -1; for(int i=0; x[i]; i++){ if(x[i] == y){ n=i; break; } } return n; } int ma..