PS알못 OrbitHv의 PS logo PS알못 OrbitHv의 PS

태그:

CLASS 3

리모컨이 망가진 상태에서 특정 채널로 이동할 때에 필요한 최소의 버튼을 누르는 횟수를 구하는 문제입니다. 브루트포스로 망가지지 않은 숫자 버튼을 누름으로써 이동할 수 있는 채널을 모두 탐색합니다. 그 다음, 목표로 하는 채널 값에서 ±1씩 해가면서 숫자 버튼으로만 만들 수 있는 채널값을 만나면 그 거리와 숫자 버튼을 만드는 데에 필요한 버튼 횟수를 더해서 출력하면 됩니다.

여기서 문제의 조건 하나를 신경써야 하는데, 처음에 위치한 채널이 100번이라는 점입니다. 예를 들어, 101번 채널의 경우는 숫자 버튼으로는 3번 눌러야하지만 +/- 버튼으로는 + 한 번으로 갈 수 있는 채널입니다. 숫자 버튼으로 탐색할 수 있는 채널의 버튼 누르는 횟수를 저장하는 배열에 100번은 0을 대입한 후 목표 채널에서 거리를 늘려가며 탐색하면 됩니다. 또한, 100번 채널 때문에 거리를 늘려가면서 만난 최초의 채널은 최소가 되는 지점이 아닐 수 있기 때문에 5~6 정도의 거리를 더 탐색해주어야 합니다.이런 생각 할 수 있으면서 왜 그렇게 틀렸을까 무수한 틀렸습니다의 요청이

소스 코드

언어 코드 시간
C++ 코드(Github) / 코드(백준) 2020-12-23 22:47:00