[C++] 2309번 일곱 난쟁이
[ 문제 ] 2309번 문제 보기 [ 제출코드 ] [ 풀이 ] 1. 모든 난쟁이의 키를 더해준다. 2. sumDiffer = (모든 난쟁이의 키) - 100 3. 배열을 오름차순으로 정렬한다. 4. 두 개씩 더해서 sumDiffer인 두 명을 선택한 뒤, 두 명의 키를 -1로 설정한다. 5. 0이상인 난쟁이의 키만 찾아서 출력한다. for i=0 to 8 for j=1 to 9 if (arr[i] + arr[j] == sumDiffer) { arr[i] = -1; arr[j] = -1; break; } [ 이야기 ] 내가 처음에 생각한 풀이는 다음과 같았다. 1. 배열을 오름차순으로 정렬한다. 2. 7개의 키를 더한다. 2-1. 키의 합이 100이 아니라면 가장 마지막을 pop하고 그다음 인덱스를 pus..
2021. 4. 21.