1009번 분산처리 문제입니다.
우리의 호기심많은 재용이는 최신 컴퓨터를 무려 10대나 가지고있다네요?
상당한 금수저인가봅니다.
다시 문제 설명을 읽어보면, 공통되는 하나의 규칙을 찾을 수 있습니다.
바로 재용이가 찾고자 하는 컴퓨터의 번호에서 그 규칙을 찾을 수 있는데요
n번 데이터가 m번째의 컴퓨터에 들어갈 때에 규칙을 찾을 수 있습니다.
바로 n이 그 수가 어떻든 맨 마지막숫자가 결국 n번 데이터를 처리할 컴퓨터의 번호라는 점입니다.
예를 들어보죠
1번 데이터 -> 1번 컴퓨터
2번 데이터 -> 2번 컴퓨터
9번 데이터 -> 9번 컴퓨터
65003번 데이터 -> 3번 컴퓨터
입니다.
규칙을 찾았으니 이제 INPUT 되는 테스트 케이스의 규칙을 보도록 할게요
1. 총 테스트케이스 갯수가 T 로 주어지구요
2. 재용이가 찾고싶은 데이터의 번호가 a^b 의 형태로 주어진다고 하네요.
출력은 재용이가 찾고싶어하는 컴퓨터의 번호입니다.
즉, 앞서 예시로 들었던 데이터 n이 a^b 의 형태로 주어진다고 하네요.
그럼 키워드는 다 나왔으니 코딩하면 끝! 아닌가요?
getComputerNumber 함수에서 1의자리 숫자만 가져오면서, 계속해서 제곱을 할 수 있도록 하였습니다.
그리고, 재용이가 찾고싶어하는 컴퓨터의 번호가 return 값으로 나오게 됩니다.
그런데 계속 틀렸습니다! 가 뜨길래.. 솔직히 당황했습니다 ㅠㅠ 제 소스에는 결점이 없었거든요
원인을 찾다가 두 가지의 오류를 찾았는데요
첫 번째로는 print 할 때 개행문자를 안넣어서 오류가 난것이었고
두 번째로는 끝자리가 0으로 끝날 때, 저는 0을 출력하더라구요..? 문제에서는 재용이의 10번째 컴퓨터가 있는지 몰랐습니다.. 이건 문제를 제대로 안읽은 제 실수 ㅠ
진짜 쉬운문제였는데 계속 틀려서 아주 살~~짝 당황했네여
'algorithm > baekjoon' 카테고리의 다른 글
[C] 백준 2292번 write-up (0) | 2023.01.02 |
---|---|
[C] 백준 1712번 write-up (0) | 2023.01.02 |
[C] 백준 1316번 write-up (0) | 2023.01.02 |
[C] 백준/2941번 write-up (0) | 2023.01.02 |
백준/1003번 write-up (1) | 2022.12.24 |