N개의 수 각각에 대해 같은 숫자가 네 번 연속 나오지 않고 1이 아닌 모든 약수가 K보다 큰지 판정한다.
보통4수학정수론문자열완전 탐색아직 제출이 없습니다시간 제한1초메모리 제한64 MB랜덤 씨는 찾아오는 사람에게 랜덤한 수를 공급하는 일을 한다. 많은 양의 랜덤한 수를 직접 만들기는 어려워서, 랜덤 씨는 난수 생성기를 쓰기로 했다.
난수 생성기는 1초에 수백만 개의 수를 만든다. 그런데 생성된 수 가운데 랜덤해 보이지 않는 것이 섞여 있어서, 랜덤 씨는 생성된 수를 모두 걸러 내야 한다.
어떤 수가 랜덤한 수이려면 다음 두 조건을 모두 만족해야 한다.
예를 들어 K가 2이면 1112233445, 111333555, 111은 랜덤한 수이다. 반면 122221은 숫자 2가 연속해서 4번 나오므로 랜덤한 수가 아니고, 1234는 약수 2가 K보다 크지 않으므로 랜덤한 수가 아니다.
1은 1 말고는 약수가 없으므로 두 번째 조건을 만족한다.
수가 랜덤한 수인지 판정하는 프로그램을 작성하시오.
첫째 줄에 정수 N과 K가 주어진다. (1≤N≤10000, 1<K<231)
다음 N개의 줄에 한 줄에 하나씩 양의 정수가 주어진다. 주어지는 양의 정수는 모두 232보다 작다.
N개의 줄을 출력한다. 각 줄에는 대응하는 수가 랜덤한 수이면 YES를, 아니면 NO를 출력한다.
예제의 K는 5이다.