2014년 7월 19일 토요일

2816 디지털 티비

티비 채널 중에 KBS1을 첫번째로, KBS2를 두번째로 옮기는 방법을 묻는 문제이다.
최대 100개의 채널이 주어지고, 500번의 기회안으로 옮겨야 되는데, 옮기는 방법은 다음과 같다.

1. 화살표를 한 칸 아래로 내린다. (채널 i에서 i+1로)
2. 화살표를 위로 한 칸 올린다. (채널 i에서 i-1로)
3. 현재 선택한 채널을 한 칸 아래로 내린다. (채널 i와 i+1의 위치를 바꾼다. 화살표는 i+1을 가리키고 있는다)
4. 현재 선택한 채널을 위로 한 칸 올린다. (채널 i와 i-1의 위치를 바꾼다. 화살표는 i-1을 가리키고 있다)

이 문제를 푸는 간단한 방법은 KBS1을 찾을 때 까지 1번으로 채널을 내리고, KBS1을 처음 까지 4번으로 채널을 올린다. KBS2도 마찬가지로 1번으로 내려가고, 두번째 까지로 4번으로 올리면 된다.
채널 수가 총 100개이기 때문에 각 채널을 1,4번으로 옮기는 최악의 경우는 200번. 채널이 2개이기 때문에 최대 400번의 기회로 옮기는것이 가능하다.

소스

댓글 없음:

댓글 쓰기