매직 카드
시간 제한10초메모리 제한1024 MB
1부터 N까지 적힌 카드 K장이 주어질 때, 가네시가 한 장을 버리고 나머지를 배열해 덴글렉이 버린 카드를 알아내도록 전략을 설계합니다.
문제
Pak Dengklek이 마술을 선보인다. Pak Dengklek의 조수 Pak Ganesh에게는 1부터 까지 번호가 붙은 카드 장이 있다. 관객 한 명이 무대에 올라와 이 중 서로 다른 카드 장을 골라 Pak Ganesh에게 건넨다. Pak Ganesh는 카드를 보고 장 중 한 장을 버린 뒤, 나머지 장을 원하는 순서로 탁자 위에 놓는다. 그러면 Pak Dengklek은 탁자 위의 장을 보고 Pak Ganesh가 버린 카드를 알아내야 한다.
마술이 시작된 뒤에는 두 사람이 서로 연락할 수 없지만, 시작하기 전에 전략을 정해 둘 수 있다. 여러분이 두 사람의 전략을 설계해 주어야 한다. 이번에는 Pak Dengklek과 Pak Ganesh가 같은 과 로 이 마술을 번 진행한다.
제한
choose_cards가 호출될 때마다:
- (모든 에 대해 ).
- cards의 모든 원소는 서로 다르다.
find_discarded_card가 호출될 때마다:
- 주어지는 모든 입력은 번의
choose_cards반환값 전체와 같으며, 순서만 무작위이다.