piano9637   12일 전

1. 일단 등수들을 벡터에 넣는다

2. 벡터에서 최소값을 찾아 최소값이 벡터의 맨왼쪽, 맨오른쪽(v.end()-1), 그외) 에 있는지에따라 맨왼쪽인경우 맨왼쪽 +1 과의 차이를 결과값에 더하고 맨왼쪽과 맨왼쪽 +1 중 큰거를 벡터에서 삭제. 맨오른쪽에 있는경우도 맨오른쪽과 맨오른쪽 - 1의 차를 결과값에 더하고 큰수를 삭제. 나머지 경우는 좌우가 존재하므로 좌우중 차이가 적은거를 선택 거기서 현재값과 비교값중 큰수를 벡터에서 삭제

3. 2의 과정을 반복하다가 벡터의 크기가 1인경우 탈출


고수님들 도움좀 주세요 ㅠㅠㅠ

댓글을 작성하려면 로그인해야 합니다.