[백준] 2003. 수들의 합2
https://www.acmicpc.net/problem/2003 2003번: 수들의 합 2 첫째 줄에 N(1 ≤ N ≤ 10,000), M(1 ≤ M ≤ 300,000,000)이 주어진다. 다음 줄에는 A[1], A[2], …, A[N]이 공백으로 분리되어 주어진다. 각각의 A[x]는 30,000을 넘지 않는 자연수이다. www.acmicpc.net 투 포인터로 풀면 된다. 주요 로직은 다음과 같다. 예를 들어 start가 2, end가 4이면 arr[2] + arr[3]의 합이 sum이 된다. 따라서 초기 값으로 start는 0, end는 1, sum은 arr[start]를 주었다. sum == m인 경우 카운트한다. sum
[백준] 18869. 멀티버스 Ⅱ
https://www.acmicpc.net/problem/18869 18869번: 멀티버스 Ⅱ M개의 우주가 있고, 각 우주에는 1부터 N까지 번호가 매겨진 행성이 N개 있다. 행성의 크기를 알고 있을때, 균등한 우주의 쌍이 몇 개인지 구해보려고 한다. 구성이 같은데 순서만 다른 우주의 쌍 www.acmicpc.net 같은 우주임을 판별하려면 행성들을 정렬했을 때, 기존 인덱스 값을 기준으로 비교하면 된다. ex, 행성1: 10, 30, 20 ➡️ 정렬 후 인덱스 값: 0, 2, 1 ex, 행성2: 30, 20, 10 ➡️ 정렬 후 인덱스 값: 2, 1, 0 ex, 행성3: 20, 50, 30 ➡️ 정렬 후 인덱스 값: 0, 2, 1 결과: 행성1과 행성3은 균등함 따라서 기존 배열(ex, 10, 30,..
[백준] 16401. 과자 나눠주기
https://www.acmicpc.net/problem/16401 16401번: 과자 나눠주기 첫째 줄에 조카의 수 M (1 ≤ M ≤ 1,000,000), 과자의 수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에 과자 N개의 길이 L1, L2, ..., LN이 공백으로 구분되어 주어진다. 과자의 길이는 (1 ≤ L1, L2, ..., LN ≤ 1, www.acmicpc.net m명에게 과자를 나눠줄 수 있는 과자의 최대 길이를 구해야 한다. 따라서 과자들을 정렬한 후에 이분탐색으로 그 최대 길이를 찾으면 된다. 주의할 점은 다음과 같다. 하나의 과자를 여러 조각으로 나눌 수 있다(예제 2 참고). 따라서 주어진 과자 갯수보다 조카 갯수가 더 많아도 가능하다. 따라서 과자들을 탐색하면서..