99클럽 코테 스터디 20일차 TIL (챌린저): [백준][Java] 1083 소트 - 골드4
·
ProblemSolve/항해99 코테스터디
문제 보기https://www.acmicpc.net/problem/1083 풀이로직은 쉬운데 놓치기 쉬운 부분이 많아서 힘들었다. 내가 생각한 방법은 이렇다.첫 start는 0으로 둔다.start부터 start+S까지 값을 검사한다. (물론 start+S가 N을 넘어가지 않아야 함.)그중 max 값을 뽑는다. 위와 같은 상황이라면 5이다.그럼 이 max의 인덱스부터 start까지 양 옆의 숫자들을 교환한다.여기서는 3과 5만 교환하면 끝이다. 한 번 옮겼기 때문에 남은 s의 값은 2이다.이 값은 max의 index - start로 정한다.이 로직대로라면 맨 앞에 올 수 있는 최고로 큰 수가 왔다는 뜻이니start를 ++ 해준다.다음으로 넘어가자.이번엔 start와 max의 index가 같다.그렇다면 ..