[Java/C++] 프로그래머스 Level 3 - 110 옮기기


[Java/C++] 프로그래머스 Level 3 - 110 옮기기

문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/77886?language=cpp [월간 코드 챌린지 시즌2]에 나온 문제라고 한다. 문제는 짧아서 좋긴 한데, 풀기 어려웠다. 문제 핵심 및 풀이 우선순위 파악 이 문제에서 구해야 하는 것은 입력 숫자에 대해 사전순으로 가장 빠른 것을 찾는 것이다. 앞자리에 '0'이 많을수록 사전순으로 빠르다. 110을 삽입할 때, 적어도 기존의 위치보다는 더 앞자리에 있어야 한다. 110을 삽입한다고 생각해 보자. 만약 '0' 앞에 삽입한다면 이 자리에 있던 '0'은 원래 자리보다 3칸이나 더 뒤로 미뤄지는 것이다. 그래서 '0'이 있다면 뒤에 삽입하는 것이 사전순으로 이득일 것이다. 이런 식의 사고를 ..


원문링크 : [Java/C++] 프로그래머스 Level 3 - 110 옮기기