코딩 134

[백준/1193/C언어] 분수찾기 _ 풀이

https://www.acmicpc.net/problem/1193 1193번: 분수찾기 첫째 줄에 X(1 ≤ X ≤ 10,000,000)가 주어진다. www.acmicpc.net 풀이 #include int main() { int x; scanf("%d", &x); int n = 1; while (1) { // x 범위 찾기 if (n * (n - 1) / 2 + 1 = x) break; else n++; } int i, j; if (n % 2 == 0) {// n이 짝수일때 i = x - (n - 1) * n / 2;// 분자 j = (n + 1) - i;// 분모 } else{// n이 홀수일때 i = (n + 1) - j;// 분자 j = x - (n - 1) * n / 2;// 분모 } print..

[백준/1009/C언어] 분산처리 _ 풀이

https://www.acmicpc.net/problem/1009 1009번: 분산처리 입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트 케이스에 대해 정수 a와 b가 주어진다. (1 ≤ a < 100, 1 ≤ b < 1,000,000) www.acmicpc.net 풀이 #include int main() { int t; int a, b; int total; scanf("%d", &t); for (int i = 0; i < t; i++) { scanf("%d %d", &a, &b); total = 1; for (int j = 0; j < b; j++) // 일의자리만 알면 되기에 곱할때마다 나머지만 본다 total = total * a % 10; if (total ==..

[백준/1037/C언어] 약수 _ 풀이

https://www.acmicpc.net/problem/1037 1037번: 약수 첫째 줄에 N의 진짜 약수의 개수가 주어진다. 이 개수는 50보다 작거나 같은 자연수이다. 둘째 줄에는 N의 진짜 약수가 주어진다. 1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되 www.acmicpc.net 풀이 #include int main() { int na, a;// n의 약수개수, n의 진짜약수 int max = 1; int min = 1000000; scanf("%d", &na); for (int i = 0; i a) min = a;/..

[백준/1032/C언어] 명령 프롬프트 _ 풀이

https://www.acmicpc.net/problem/1032 1032번: 명령 프롬프트 첫째 줄에 파일 이름의 개수 N이 주어진다. 둘째 줄부터 N개의 줄에는 파일 이름이 주어진다. N은 50보다 작거나 같은 자연수이고 파일 이름의 길이는 모두 같고 길이는 최대 50이다. 파일이름은 www.acmicpc.net 풀이 #include int main() { int n; char s[50][51];// 문자열을 2차원 배열로 설정 (i번째의 문자열) char ps[51] = {};// 문자가 다를때 ?를 출력할 문자열 int j; scanf("%d", &n); for (int i = 0; i < n; i++) { scanf("%s", &s[i]);// i번째 문자열 입력 j = 0; while (s[i..

[백준/2903/C언어] 중앙 이동 알고리즘 _ 풀이

https://www.acmicpc.net/problem/2903 2903번: 중앙 이동 알고리즘 상근이는 친구들과 함께 SF영화를 찍으려고 한다. 이 영화는 외계 지형이 필요하다. 실제로 우주선을 타고 외계 행성에 가서 촬영을 할 수 없기 때문에, 컴퓨터 그래픽으로 CG처리를 하려고 한다. www.acmicpc.net 풀이 #include int main() { int n; int side = 2;// 한변의 길이(점개수) 초깃값은 2 int square;// 정사각형 scanf("%d", &n); for (int i = 0; i < n; i++) {// N번 반복 side = 2 * side - 1;// 문제의 규칙을 찾아보면 (2*side)-1 square = side * side;// 정사각형 점..

[백준/2444/C언어] 별 찍기 - 7 _ 풀이

https://www.acmicpc.net/problem/2444 2444번: 별 찍기 - 7 첫째 줄부터 2×N-1번째 줄까지 차례대로 별을 출력한다. www.acmicpc.net 풀이 #include int main() { int n; scanf("%d", &n); for (int i = 0; i i; j--)// i가 커질수록 띄어쓰기 횟수는 줄어듬 printf(" "); for (int j = 0; j 0; i--) {// 6 ~ 9행 for (int j = i; j 0; j--)// i가 줄어들수록 별은 2개씩 줄어듬 printf("*"); printf("\n");// 줄바꿈 } return 0; } 처음에 큰 fo..

[백준/15917/C언어] 노솔브 방지문제야!! _ 풀이

https://www.acmicpc.net/problem/15917 15917번: 노솔브 방지문제야!! 어떤 수 a가 2의 거듭제곱꼴로 나타내어진다고 해 봅시다. 그렇다면, a = 2n (단 n ≥ 0인 정수) 를 만족할 겁니다. 보통, 각 비트별로 검사를 하면서, 켜져 있는 비트의 개수를 알아내는 것도 좋은 www.acmicpc.net 풀이 #include #include #include int main() { int q; int a; scanf("%d", &q); int* pa = (int*)malloc(sizeof(int) * q);// 동적 할당으로 q개만큼 a에 대한 값 저장 for (int i = 0; i < q; i++) {//q개만큼 반복 scanf("%d", &a); int j = 0; ..

[백준/5086/C언어] 배수와 약수 _ 풀이

https://www.acmicpc.net/problem/5086 5086번: 배수와 약수 각 테스트 케이스마다 첫 번째 숫자가 두 번째 숫자의 약수라면 factor를, 배수라면 multiple을, 둘 다 아니라면 neither를 출력한다. www.acmicpc.net 풀이 #include int main() { int a, b; while (1) { scanf("%d %d", &a, &b); // a와 b가 동시에 0일때 종료 if (a == 0 && b == 0) break; // a가 b의 약수일때 if (b % a == 0) printf("factor\n"); // a가 b의 배수일때 else if (a / b > 0 && a % b == 0) printf("multiple\n"); // 아무것도..

[백준/5622/C언어] 다이얼 _ 풀이

https://www.acmicpc.net/problem/5622 5622번: 다이얼 첫째 줄에 알파벳 대문자로 이루어진 단어가 주어진다. 단어의 길이는 2보다 크거나 같고, 15보다 작거나 같다. www.acmicpc.net 풀이 #include int main() { char s[16]; int ss = 0; scanf("%s", s); int i = 0; while (s[i] != '\0') { if (s[i] >= 'A' && s[i] = 'D' && s[i] = 'G' && s[i] = 'J' && s[i] = 'M' && s[i] = 'P' && s[i] = 'T' && s[i]