BOJ

    [BOJ / 백준] 9020번 골드바흐의 추측 C++ 문제 풀이

    단계별로 풀어보기 - 수학 2단계 - [5단계] 9020번 문제 문제 링크 : www.acmicpc.net/problem/9020 9020번: 골드바흐의 추측 1보다 큰 자연수 중에서 1과 자기 자신을 제외한 약수가 없는 자연수를 소수라고 한다. 예를 들어, 5는 1과 5를 제외한 약수가 없기 때문에 소수이다. 하지만, 6은 6 = 2 × 3 이기 때문에 소수가 아 www.acmicpc.net 입력 복사 : 3 8 10 16 CODE #include #include using namespace std; bool isPrime(int i) { int rt; rt = sqrt(i); if (rt == 1 && i != 1) {//2,3인 경우 return true; } if (i % 2) {//홀수일 경우 ..

    [BOJ / 백준] 4948번 베르트랑 공준 C++ 문제 풀이

    단계별로 풀어보기 - 수학 2단계 - [4단계] 4948번 문제 문제 링크 : www.acmicpc.net/problem/4948 4948번: 베르트랑 공준 베르트랑 공준은 임의의 자연수 n에 대하여, n보다 크고, 2n보다 작거나 같은 소수는 적어도 하나 존재한다는 내용을 담고 있다. 이 명제는 조제프 베르트랑이 1845년에 추측했고, 파프누티 체비쇼 www.acmicpc.net 입력 복사 : 1 10 13 100 1000 10000 100000 0 CODE #include #include using namespace std; int main() { int n, rt, cnt = 0; while (1) { cin >> n; if (!n)//0 입력시 종료 break; for (int i = n + 1; i

    [BOJ / 백준] 1929번 소수 구하기 C++ 문제 풀이

    단계별로 풀어보기 - 수학 2단계 - [3단계] 1929번 문제 문제 링크 : www.acmicpc.net/problem/1929 1929번: 소수 구하기 첫째 줄에 자연수 M과 N이 빈 칸을 사이에 두고 주어진다. (1 ≤ M ≤ N ≤ 1,000,000) M이상 N이하의 소수가 하나 이상 있는 입력만 주어진다. www.acmicpc.net 입력 복사 : 3 16 CODE #include #include using namespace std; int main() { int M, N; int rt; cin >> M >> N; for (int i = M; i

    [BOJ/백준] 2581번 소수 C++ 문제 풀이

    단계별로 풀어보기 - 수학 2단계 - [2단계] 2581번 문제 문제 링크 : www.acmicpc.net/problem/2581 2581번: 소수 M이상 N이하의 자연수 중 소수인 것을 모두 찾아 첫째 줄에 그 합을, 둘째 줄에 그 중 최솟값을 출력한다. 단, M이상 N이하의 자연수 중 소수가 없을 경우는 첫째 줄에 -1을 출력한다. www.acmicpc.net 입력 복사 : > 예제 입력 1 60 100 >예제 입력 2 64 65 풀이 소수를 판별하는 방식은 이전 단계인 1978번에서와 동일하당. 일단 소수일 때는 소수의 합을 저장하는 sum에 해당 변수를 더해준다. 또, 소수를 구할 때 M부터 작은 순서대로 소수 여부를 검사하기 때문에 min값이 저장된 값이 없음을 나타내는 초기값 -1인 경우에 처..

    [BOJ/백준] 1978번 소수 찾기 C++ 문제 풀이

    단계별로 풀어보기 - 수학 2단계 - [1단계] 1978번 문제 문제 링크 : www.acmicpc.net/problem/1978 1978번: 소수 찾기 첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다. www.acmicpc.net 입력 복사 : 4 1 3 5 7 풀이 소수는 1과 자기 자신으로만 나누어지는 1보다 큰 정수들을 말한다. ex) 2, 3, 5, 7, 11... 따라서 입력 받은 각 변수를 나누어떨어지게 할 수 있는 수가 2개(1과 자기 자신)일 때, 해당 변수를 소수라고 판단한다. CODE #include using namespace std; int main() { int N, result = 0; int temp,..

    [BOJ/백준] 1011번 Fly me to the Alpha Centauri C++ 문제 풀이

    단계별로 풀어보기 - 수학 1 단계 - [8단계] 1011번 문제 문제 링크 : www.acmicpc.net/problem/1011 1011번: Fly me to the Alpha Centauri 우현이는 어린 시절, 지구 외의 다른 행성에서도 인류들이 살아갈 수 있는 미래가 오리라 믿었다. 그리고 그가 지구라는 세상에 발을 내려 놓은 지 23년이 지난 지금, 세계 최연소 ASNA 우주 비행 www.acmicpc.net 입력 복사 : 3 0 3 1 5 45 50 풀이 y - x 이동 작동횟수 1 1 1 2 11 2 3 111 3 4 121 3 5 1211 4 6 1221 4 7 12211 5 8 12221 5 9 12321 5 10 123211 6 11 123221 6 12 123321 6 13 1233..

    [BOJ/백준] 2775번 부녀회장이 될테야 C++ 문제 풀이

    단계별로 풀어보기 - 수학 1 단계 - [7단계] 2775번 문제 문제 링크 : www.acmicpc.net/problem/2775 2775번: 부녀회장이 될테야 첫 번째 줄에 Test case의 수 T가 주어진다. 그리고 각각의 케이스마다 입력으로 첫 번째 줄에 정수 k, 두 번째 줄에 정수 n이 주어진다. (1 k >> n; for (int j = 1; j

    [BOJ/백준] 10250번 ACM 호텔 C++ 문제 풀이

    단계별로 풀어보기 - 수학 1 단계 - [6단계] 10250번 문제 문제 링크 : www.acmicpc.net/problem/10250 10250번: ACM 호텔 프로그램은 표준 입력에서 입력 데이터를 받는다. 프로그램의 입력은 T 개의 테스트 데이터로 이루어져 있는데 T 는 입력의 맨 첫 줄에 주어진다. 각 테스트 데이터는 한 행으로서 H, W, N, 세 정수 www.acmicpc.net 입력 복사 : 2 6 12 10 30 50 72 풀이 손님들은 최소로 걷는 것을 선호하기 때문에, 101, 201, 301, ˙˙˙와 같이 h층까지 x01호가 채워진다. 그 후로는 x02호가 다 채워지는 순서로 손님이 채워진다. CODE #include using namespace std; int main() { in..

    [BOJ/백준] 2869번 달팽이는 올라가고 싶다 C++ 문제 풀이

    단계별로 풀어보기 - 수학 1 단계 - [5단계] 2869번 문제 문제 링크 : www.acmicpc.net/problem/2869 2869번: 달팽이는 올라가고 싶다 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B > A >> B >> V; while (1) { day++; snail += A; if (snail >..

    [BOJ/백준] 1193번 분수찾기 C++ 문제 풀이

    단계별로 풀어보기 - 수학 1 단계 - [4단계] 1193번 문제 문제 링크 : www.acmicpc.net/problem/1193 1193번: 분수찾기 첫째 줄에 X(1 ≤ X ≤ 10,000,000)가 주어진다. www.acmicpc.net 입력 복사 : 14 풀이 위 그림은 각 분수의 분자가 대각선 상에서 증가하는 방향을 표시했습니다. 그림과 같은 방향으로 i번째 대각선에서는 i까지 분자가 증가합니다. 분자는 홀수번째 대각선에서 아래로 증가, 짝수번째 대각선에서 위로 증가하고 있습니다. 분모는 분자의 반대 방향으로 이루어져 있어서, 분자를 구한 후, i+1에서 분자를 뺀 값을 분모로 사용할 수 있습니다. i번째 대각선에는 i개의 원소가 있으므로, N이 몇번째 대각선에 있는지 파악하기 위해 i를 순차..