컴퓨터 (300) 썸네일형 리스트형 백준 알고리즘 10872번: 팩토리얼 C언어 문제 출처: www.acmicpc.net/problem/10872 10872번: 팩토리얼 0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오. www.acmicpc.net 1. 코드 #include int fac(int n) { if(n > 1) return n * fac(n - 1); else if(n == 0) return 1; else return n; } int main(void) { int N; scanf("%d", &N); printf("%d", fac(N)); return 0; } 2. 문제 해결 방식 제목이 팩토리얼에 관한 것이니 우선 팩토리얼에 대해서 먼저 알아보자. n!= n × (n − 1) ⋯⋯ × 3 × 2 × 1 (단, n ≥ 0) 팩토리얼은 n.. 백준 알고리즘 1002번: 터렛 C언어 문제 출처: https://www.acmicpc.net/problem/1002 1002번: 터렛 각 테스트 케이스마다 류재명이 있을 수 있는 위치의 수를 출력한다. 만약 류재명이 있을 수 있는 위치의 개수가 무한대일 경우에는 -1을 출력한다. www.acmicpc.net 1. 코드 #include #include int main(void) { int t, x1, y1, r1, x2, y2, r2, result; double distanse, subtract; //거리, 뺄셈 scanf("%d", &t); while(t--) { scanf("%d %d %d %d %d %d", &x1, &y1, &r1, &x2, &y2, &r2); distanse = sqrt(pow(x2 - x1, 2) + pow(y2 -.. 백준 알고리즘 3053번: 택시 기하학 C언어 문제 출처: https://www.acmicpc.net/problem/3053 3053번: 택시 기하학 문제 19세기 독일 수학자 헤르만 민코프스키는 비유클리드 기하학 중 택시 기하학을 고안했다. 택시 기하학에서 두 점 T1(x1,y1), T2(x2,y2) 사이의 거리는 다음과 같이 구할 수 있다. D(T1,T2) = |x1-x2| + |y1-y2| 두 점 사이의 거리를 제외한 나머지 정의는 유클리드 기하학에서의 정의와 같다. 따라서 택시 기하학에서 원의 정의는 유클리드 기하학에서 원의 정의와 같다. 원: 평면 상의 어떤 점에서 거리가 일정한 점들의 집합 www.acmicpc.net 1. 코드 #include #define PI 3.14159265359 int main(void) { int r; doub.. 백준 알고리즘 3009번: 네 번째 점 C언어 문제 출처: https://www.acmicpc.net/problem/3009 3009번: 네 번째 점 문제 세 점이 주어졌을 때, 축에 평행한 직사각형을 만들기 위해서 필요한 네 번째 점을 찾는 프로그램을 작성하시오. 입력 세 점의 좌표가 한 줄에 하나씩 주어진다. 좌표는 1보다 크거나 같고, 1000보다 작거나 같은 정수이다. 출력 직사각형의 네 번째 점의 좌표를 출력한다. 예제 입력 1 복사 30 20 10 10 10 20 예제 출력 1 복사 30 10... www.acmicpc.net 1. 코드 #include int main(void) { int x[4], y[4], i; for(i = 0; i < 3; i++) scanf("%d %d", &x[i], &y[i]); /*x값 서로 비교하여 겹치지.. 백준 알고리즘 4153번: 직각삼각형 C언어 문제 출처: www.acmicpc.net/problem/4153 4153번: 직각삼각형 입력은 여러개의 테스트케이스로 주어지며 마지막줄에는 0 0 0이 입력된다. 각 테스트케이스는 모두 30,000보다 작은 양의 정수로 주어지며, 각 입력은 변의 길이를 의미한다. www.acmicpc.net 1. 코드 #include int main(void) { long n1, n2, n3; while(1) { long num1, num2, num3; scanf("%ld %ld %ld", &n1, &n2, &n3); if(n1 == 0 && n2 == 0 && n3 == 0) break; num1 = n1 * n1, num2 = n2 * n2, num3 = n3 * n3; if(num1 + num2 == num3 ||.. 백준 알고리즘 1085번: 직사각형에서 탈출 C언어 문제 출처: https://www.acmicpc.net/problem/1085 1085번: 직사각형에서 탈출 첫째 줄에 x y w h가 주어진다. w와 h는 1,000보다 작거나 같은 자연수이고, x는 1보다 크거나 같고, w-1보다 작거나 같은 자연수이고, y는 1보다 크거나 같고, h-1보다 작거나 같은 자연수이다. www.acmicpc.net 1. 코드 #include int main(void) { int x, y, w, h; scanf("%d %d %d %d", &x, &y, &w, &h); if(w - x > h - y) { if(h - y > x) printf("%d", (x > y) ? y : x); else if(h - y > y) printf("%d", (y > x) ? x : y); e.. 백준 알고리즘 9020번: 골드바흐의 추측 C언어 문제 출처: https://www.acmicpc.net/problem/9020 9020번: 골드바흐의 추측 문제 1보다 큰 자연수 중에서 1과 자기 자신을 제외한 약수가 없는 자연수를 소수라고 한다. 예를 들어, 5는 1과 5를 제외한 약수가 없기 때문에 소수이다. 하지만, 6은 6 = 2 × 3 이기 때문에 소수가 아니다. 골드바흐의 추측은 유명한 정수론의 미해결 문제로, 2보다 큰 모든 짝수는 두 소수의 합으로 나타낼 수 있다는 것이다. 이러한 수를 골드바흐 수라고 한다. 또, 짝수를 두 소수의 합으로 나타내는 표현을 그 수의 골드바흐 파티션이라고 한다. www.acmicpc.net 1. 코드 #include int main(void) { int cnt, N; int i, j, arr[10001] =.. 백준 알고리즘 4948번: 베르트랑 공준 C언어 문제 출처: https://www.acmicpc.net/problem/4948 4948번: 베르트랑 공준 문제 베르트랑 공준은 임의의 자연수 n에 대하여, n보다 크고, 2n보다 작거나 같은 소수는 적어도 하나 존재한다는 내용을 담고 있다. 이 명제는 조제프 베르트랑이 1845년에 추측했고, 파프누티 체비쇼프가 1850년에 증명했다. 예를 들어, 10보다 크고, 20보다 작거나 같은 소수는 4개가 있다. (11, 13, 17, 19) 또, 14보다 크고, 28보다 작거나 같은 소수는 3개가 있다. (17,19, 23) n이 주어졌을 때, n보다 크고, 2n보 www.acmicpc.net 1. 코드 #include int main(void) { int N, cnt = 0; int i, j, arr[2469.. 이전 1 ··· 31 32 33 34 35 36 37 38 다음 목록 더보기