cpp(303)
-
[백준 BOJ] 7891번 Can you add this? (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/7891 7891번: Can you add this? The input contains several test cases. The first line contains and integer t (t ≤ 100) denoting the number of test cases. Then t tests follow, each of them consisiting of two space separated integers x and y (−109 ≤ x, y ≤ 109). www.acmicpc.net 접근 방법 - 사칙연산의 기초 문제 백준의 7891번 문제는 사칙연산 중에서도 덧셈을 이용하여 간단히 해결할 수 있는 문제이다. 해당 문제는, 각 케이스..
2022.10.06 -
[백준 BOJ] 4948번 베르트랑 공준 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/4948 4948번: 베르트랑 공준 베르트랑 공준은 임의의 자연수 n에 대하여, n보다 크고, 2n보다 작거나 같은 소수는 적어도 하나 존재한다는 내용을 담고 있다. 이 명제는 조제프 베르트랑이 1845년에 추측했고, 파프누티 체비쇼 www.acmicpc.net 접근 방법 - 에라토스테네스의 체 알고리즘을 응용한 소수 판정 문제 백준의 4948번 문제는 에라토스테네스의 체 알고리즘을 통해 소수를 판별해야 하는 문제이다. 해당 문제는, 각 케이스의 입력값 n에 대하여 n보다 크고 2n보다 작거나 같은 소수의 개수를 구하여 출력해야 하는 문제이다. 에라토스테네스의 체 알고리즘에 대한 설명은 이전 ps글에서 다룬 적이 있어 이에 대한 링크를 ..
2022.10.06 -
[백준 BOJ] 2460번 지능형 기차 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/2460 2460번: 지능형 기차 2 최근에 개발된 지능형 기차가 1번역(출발역)부터 10번역(종착역)까지 10개의 정차역이 있는 노선에서 운행되고 있다. 이 기차에는 타거나 내리는 사람 수를 자동으로 인식할 수 있는 장치가 있다. www.acmicpc.net 접근 방법 - 사칙연산의 기본 문제 백준의 2460번 문제는 사칙연산에 있어 기본적인 연산을 요구하고 있는 문제이다. 해당 문제는, 각 정거장마다 기차에 승차하고 하차하는 인원을 입력받아 기차의 최대 승객 인원을 구하여 출력해야 하는 문제이다. 필자가 보기엔, 반복문으로 사칙연산을 연속으로 수행하면 쉽게 해결할 수 있는 문제라 판단된다. 따라서 코딩을 하는 데에 어느 정도 익숙해져..
2022.10.05 -
[백준 BOJ] 2702번 초6 수학 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/2702 2702번: 초6 수학 첫째 줄에 테스트 케이스의 개수 T(1 a >> b; int num = 1; int min = a 1; j--) { if (a % j == 0 && b % j == 0) { a /= j;b /= j; num *= j; } } cout
2022.10.05 -
[백준 BOJ] 11728번 배열 합치기 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/11728 11728번: 배열 합치기 첫째 줄에 배열 A의 크기 N, 배열 B의 크기 M이 주어진다. (1 ≤ N, M ≤ 1,000,000) 둘째 줄에는 배열 A의 내용이, 셋째 줄에는 배열 B의 내용이 주어진다. 배열에 들어있는 수는 절댓값이 109보다 작거 www.acmicpc.net 접근 방법 - 두 포인터의 기본 문제 백준의 11728번 문제는 두 포인터의 원리를 이용하여 해결해야 하는 기초 문제이다. 해당 문제는, 입력값으로 나오는 2개의 배열을 합친 형태를 오름차순으로 출력해야 하는 문제이다. 사실 일부 언어에서는 정말 배열 2개를 그대로 합친 뒤에 정렬을 수행하면 해결될 문제이긴 하다. 다만, 알고리즘 분류에도 두 포인터 ..
2022.10.04 -
[백준 BOJ] 13866번 팀 나누기 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/13866 13866번: 팀 나누기 입력은 네 개의 정수 A, B, C 및 D가 포함된 한 줄로 구성되며 4명의 스킬 레벨이 주어진다. (0 ≤ A ≤ B ≤ C ≤ D ≤ 104) www.acmicpc.net 접근 방법 - 사칙연산의 기본 문제 백준의 13866번 문제는 사칙연산에 있어 기초적인 연산으로 해결해야 하는 문제이다. 해당 문제는, 4명을 두 팀으로 나누었을 때 팀 간의 최소 격차를 연산하여 출력해야 하는 문제이다. 필자는 스킬 레벨이 가장 낮은 사람과 가장 높은 사람이 한 팀을 이루고 나머지 2명이 한 팀을 이루는 경우가 두 팀 간의 격차가 가장 작은 경우일 것이라 생각하였다. 입력값 상에서 이미 정렬이 되어있기 때문에 사..
2022.10.04