[Algo Smash] Week03 - BOJ1940, BOJ1253, PGS 178870

·
백준
BOJ 1940번: 주몽1) 접근 방법첫째 줄의 재료의 개수(n)가 주어지고, 두 번째에 두 재료의 수를 합쳐서 만들어야 하는 수(m)가 주어진다. 즉, arr[n]에 있는 숫자들 중 2개의 덧셈이 m이 되는 개수를 찾으면 된다.처음에 생각했던 방법은 단순하게 이중 for문을 사용해서 가능한 모든 조합의 수를 다 고려하는 방법이 떠올랐다. 하지만 이렇게 되면 시간 복잡도가 O(N*N)이고, N이 최대 15,000이기 때문에 시간 초과가 날 수 있다고 생각했다. 대신 두 개의 재료만 선택하면 되므로, 배열을 정렬한 뒤 양 끝에서 범위를 좁혀서 탐색하는 알고리즘을 선택했다. 데이터를 오름차순으로 정렬포인터 이동 규칙:arr[start] + arr[end] == M: 조건 만족을 했으므로 result를 증가시..