프로그램 명: lamps
제한시간: 1
초
ioi 98 년도 경축 저녁식사 모임을 축하하기 위해 , 1 부터 N ( 10 <= N <= 100)까지의 번호가 붙은 램프가
있다.
이 램프는 4 개의 버튼과 연결되어 있다.
- Button 1
- 이 버튼이 눌려지면 모든 램프의 상태가 바뀐다. ON 이면 OFF , OFF 이면 ON
- Button 2
- 홀수번째의 램프의 상태가 바뀐다.
- Button 3
- 짝수번째의 램프의 상태가 바뀐다.
- Button 4
- 3*k + 1(단 , k >= 0) 즉 1 , 4 , 7 ,... 램프 상태가 바뀐다.
버튼을 누른 횟수와 켜진 램프번호 , 꺼진 램프번호의 일부가 주어질 때 가능한
상태를 모두 출력하는 것이 문제이다.
파티가 시작될 때 , 모든 램프는 ON 상태로 버튼을 누른 횟수는 0 으로 시작한다.
입력
입력에서 같은 램프 번호는 중복되어 입력되지 않는다.
- 첫번째 라인은 전구 수 N ,
- 다음 라인은 눌려진 버튼 회수 C(0 <= C <= 10000) ,
- 다음 라인은 마지막 상태에서 켜진 전구 번호 중 일부가 나열 되고 끝을 구분하기 위해 -1 이 입력되고
- 마지막 라인은 마지막 상태에서 꺼진 전구 중 일부가 나열되고 마지막에는 -1 이 입력된다.
출력
조건을 만족하는 전구의 상태를 중복없이 정렬한 후 출력한다.
1 은 on , 0 은 off 를 의미한다.
조건을 만족하는 상태가 없는 경우 IMPOSSIBLE 을 출력한다.
입출력 예
입력
10
1
-1
7 -1
출력
0000000000
0101010101
0110110110
보기의 경우 버튼이 한 번 눌려지고 7 번째 램프가 off 되어 있어야 하므로
1 번 , 2 번 , 4 번 버튼이 눌려지면 7 번째 램프가 꺼진 상태가 되므로 세 가지
경우가 존재한다.
출처:ioi 기출
[질/답]
[제출 현황]
[푼 후(0)]