체크섬
시간 제한2초메모리 제한1024 MB
숨겨진 주기 가중치 수열의 길이 N(1000 이하)과 각 원소 K_i를 찾습니다. 0이 없는 수열로 체크섬을 질의합니다.
문제
검사 합(체크섬)은 데이터를 전송하거나 입력할 때 생기는 오류를 찾는 데 쓰인다. 이를 위해 여러 알고리즘이 고안되었다. 이 문제는 그중 가장 단순한 방법을 다룬다.
수열 의 체크섬은 다음과 같이 정의된다.
여기서 은 정해진 상수이다. 수열 는 주기적으로 취급한다. 의 길이가 보다 길면 의 원소를 처음부터 다시 사용한다. 가 더 짧으면 의 일부 원소는 사용되지 않는다.
주쿠는 이 체크섬을 사용하는 시스템을 찾아냈다. 하지만 이 시스템의 수열 길이 과 원소 의 값은 알지 못한다. 알고 있는 것은 이고 라는 사실뿐이다. 주쿠는 시스템에 질의를 보낼 수 있다. 각 질의는 숫자열이며, 시스템은 그 숫자열의 체크섬을 답으로 돌려준다. 주쿠의 키보드는 0 키가 약간 고장 나 있어 0을 입력하기 어렵다. 그래서 질의에 숫자 0을 쓰지 않으려 한다.
수열 의 길이와 원소 값을 구하는 프로그램을 작성하라. 는 주기적이므로 가능한 답은 무수히 많다. 그중 가장 짧은 답을 출력하라.