팰린드롬 판별하기
시간 제한1초메모리 제한1024 MB
숨겨진 수열이 팰린드롬인지 판별하는 문제로, 두 종류의 질의 기계를 사용하며 find_character에 넘기는 인덱스 목록 크기의 합이 N 이하여야 한다.
문제
KOI사에서는 알고리즘 대회를 홍보하기 위한 새로운 이벤트를 만들었다! 이벤트에 참가하기 위해서는 KOI사만이 알고 있는 비밀 수열 가 팰린드롬인지 판별해야 한다.
수열을 뒤집었을 때의 결과가 원래의 수열과 같아지는 수열을 팰린드롬이라고 한다. 즉, 길이가 인 수열 가 팰린드롬이라는 것은, 모든 에 대해 이라는 것과 같다. 예를 들어, , 은 팰린드롬이지만 , 는 팰린드롬이 아니다.
당신은 처음에 비밀 수열 의 길이 을 알고 있다. 또한, 는 이상 이하의 정수로 이루어진 수열임도 알고 있다. 이벤트 참가자들을 돕기 위해, KOI사는 특별 제작한 두 가지 기계를 제공한다.
count_pair기계에는 서로 다른 세 개의 수 , , 를 입력해야 한다. 이때 기계는 , , 중 같은 쌍의 개수를 반환한다. 예를 들어, 일 경우 기계는 3을 반환한다.find_character기계에는 하나의 정수 와 정수들의 목록 를 입력해야 한다. 이때 기계는 인 가 목록 에 있다면 , 없으면 을 반환한다.- 두 가지 기계에 입력되는 모든 수는 반드시 이상 이하의 정수여야 한다.
find_character기계에 입력한 의 크기의 합은 이하여야 한다.
당신은 적은 횟수로 기계를 사용하여 비밀 수열 가 팰린드롬인지 판별해야 한다.
제한
- (모든 )
- 한 개의 테스트 케이스에서 주어지는 의 합을 이라 할 때,
이 문제에서 그레이더는 적응적이지 않다(NOT adaptive). 이것은 가 그레이더의 수행 초기에 고정되어 쿼리에 따라 변하지 않음을 의미한다.
예제
이 문제는 공개된 예제가 없습니다.