본문 바로가기

카테고리

(315)
백준 알고리즘 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..
인사말(불어, 일본어, 영어) 1. 안녕하세요(아침)불어: Bonjour(봉주흐) 일본어: おはようございます(오하요 - 고자이마스) 영어: Good morning(굿 모닝) 2. 안녕하세요(점심)불어: Bonjour(봉쥬흐) 일본어: こんにちは(곤니치와) 영어: Good afternoon(굿 애프터눈) 3. 안녕하세요(저녁)불어: Bonsoir(봉수와) 일본어: こんばんは(곰방와) 영어: Good evening(굿 이브닝) 4. 안녕불어: Salut(쌜류) 일본어: おはよう(오하요)(오전 인사말) 오전 인사말을 제외하고는 다 똑같은듯 하다 영어: Hi(하이) 오늘부터 일본어와 불어와 영어를 한꺼번에 공부해보고 블로그에 정리할 것 같다. 그런데 오늘부터 시작했기 때문에 같은 말이어도 쓰임이 다를 수도 있지만 최대한 검색을 해본 뒤 알아..
백준 알고리즘 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..
백준 알고리즘 1929번: 소수 구하기 C언어 문제 출처: www.acmicpc.net/problem/1929 1929번: 소수 구하기 첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다. www.acmicpc.net 1. 코드 #include int main(void) { int M, N; int i, j, arr[1000001] = {0, }; arr[0] = 1, arr[1] = 1; for(j = 2; j < 1000001 / j; j++) { if(arr[j] == 1) continue; for(i = j * j; i < 1000001; i += j) if(i % j == 0) arr[i] = 1; } scanf("%d %d", &M,..