n, m, k와 수열 a가 주어질 때, GCD 행렬 G[i][j] = gcd(i, j)의 어떤 행 i가 a를 연속한 열 구간으로 포함하는지 판정한다.
어려움8정수론수학구현완전 탐색아직 제출이 없습니다시간 제한2초메모리 제한512 MB
문제 설명
예제5
문제
크기가 n×m인 행렬 G가 있다. G[i][j]에는 i와 j의 최대공약수가 들어 있다 (1≤i≤n, 1≤j≤m).
길이가 k인 수열 a1,a2,…,ak가 주어졌을 때, 이 수열이 G의 한 행에 연속 부분 수열로 나타나는지 판정하는 프로그램을 작성하시오. 즉 모든 1≤l≤k에 대해 G[i][j+l−1]=al을 만족하는 i와 j가 존재하는지 구해야 한다. 여기서 1≤i≤n, 1≤j≤m−k+1이다.
입력
첫째 줄에 n, m, k가 주어진다 (1≤n,m≤1012, 1≤k≤10000).
둘째 줄에 a1,a2,…,ak가 주어진다 (1≤ai≤1012).
출력
주어진 수열이 G에 연속 부분 수열로 나타나면 YES를, 나타나지 않으면 NO를 출력한다.