ing0324   1년 전

문제

2와 5로 나누어 덜어지지 않는 정수 n(1 ≤ n ≤ 10000)가 주어졌을 때, 1로만 이루어진 n의 배수를 찾는 프로그램을 작성하시오.

입력

입력을 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, n이 주어진다.

출력

1로 이루어진 n의 배수 중 가장 작은 수의 자리수를 출력한다.


long으로 구현시 못구하는 정수가 존재해서 BigInteger를 사용했습니다.

소스에 사용된 풀이방식은

1로만 구성된수(1,11,111,....)중 1부터 시작하여 입력받은수(n)로 mod연산시0 될때까지 자리수를 늘렸고

mod연산시 0이 될경우 배수로 판단하여 1로구성된 수의 길이를 출력하게 구현했습니다.

입력범위처럼 1부터 10000까지 테스트로 돌렸을시 문제없이 돌아가는데 제출시 런타임에러가 발생하는데

어느부분이 문제인지 도저히 감이 안와서 질문 올렸습니다.

baekjoon   1년 전

예제 입력에 불필요한 공백이 있어서 Java에서 RTE가 나네요.

재채점하겠습니다.

ing0324   1년 전

/baekjoon

런타임만 해결하면 맞게 했다고 생각햇는데 다시 틀려서 멘붕하다 혹시나 해서 질문 올립니다....

입력이 여러개의 테스트로 구성되있다고 주어져있는데

다른문제들은 테스트갯수가 첫줄에나오는데 이 문제 같은경우는 그냥 바로 입력이 연속해서 들어오는데

위에 코드들처럼 한번입력받고 종료되는 형태로 작성해도 무관한건지 궁금합니다.



baekjoon   1년 전

아니요.

계속 입력받고 EOF인 경우에 프로그램을 종료해야 합니다.

ing0324   1년 전

/baekjoon

잘 해결했습니다.

답변 감사합니다.


댓글을 작성하려면 로그인해야 합니다.