블리트릭스가 N의 배수를 세면서 0부터 9까지의 숫자가 언제 모두 나타나는지 확인하고, 마지막 배수 또는 INSOMNIA를 출력한다.
쉬움3시뮬레이션구현수학면접 대비아직 제출이 없습니다시간 제한5초메모리 제한512 MB양 블리트릭스는 더 빨리 잠들기 위한 방법을 생각해 냈다.
먼저 수 N을 하나 고른다. 그리고 N, 2×N, 3×N, ... 을 차례로 떠올린다. 수를 하나 떠올릴 때마다 그 수에 나타나는 모든 자릿수의 숫자를 적어 두는데, 이미 적은 숫자는 다시 적지 않는다. 0부터 9까지 열 개의 숫자가 모두 적히면 블리트릭스는 잠든다.
블리트릭스는 N부터 시작하고, i×N 다음에는 (i+1)×N을 떠올린다. 예를 들어 N=1692이면 다음과 같이 진행된다.
블리트릭스가 잠들기 직전에 떠올린 수는 무엇인가? 영원히 잠들 수 없다면 INSOMNIA를 출력한다.
첫째 줄에 테스트 케이스의 개수 T가 주어진다. 다음 T개의 줄에는 각 테스트 케이스마다 블리트릭스가 고른 수 N이 하나씩 주어진다.
각 테스트 케이스마다 한 줄에 Case #x: y를 출력한다. x는 1부터 시작하는 테스트 케이스 번호이고, y는 블리트릭스가 잠들기 직전에 떠올린 수이다. 영원히 잠들 수 없다면 y 자리에 INSOMNIA를 출력한다.
예제의 첫 번째 케이스에서는 2×0=0, 3×0=0, ... 처럼 계속 0만 나오므로 블리트릭스는 0 외에는 어떤 숫자도 기록하지 못한다. 따라서 영원히 잠들 수 없다.
두 번째 케이스에서는 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 순서로 떠올리고, 0이 가장 마지막에 기록된다. 따라서 답은 10이다.
세 번째 케이스에서는 2, 4, 6, ... 순서로 떠올린다. 숫자 9는 90이 되기 전에는 기록되지 않는다. 90을 떠올릴 때는 이미 0부터 8까지의 숫자가 모두 적혀 있으므로 답은 90이다.
네 번째 케이스에서는 11, 22, 33, 44, 55, 66, 77, 88, 99, 110을 떠올리므로 답은 110이다.