문제
5개의 자연수가 주어질 때, 각 수의 제곱의 합을 10으로 나눈 나머지(검증수)를 출력한다.
입력
첫째 줄에 5개의 자연수가 주어진다 (0 이상 9 이하).
출력
검증수를 출력한다.
예제
| 입력 | 출력 |
|---|---|
0 4 2 5 6 | 1 |
풀이
5개의 수를 읽어 각각의 제곱을 합산한 뒤 10으로 나눈 나머지를 출력한다.
- 5번 반복하며 정수를 읽고 제곱을 sum에 누적한다
- sum % 10을 출력한다
핵심 아이디어: 검증수 = (a1^2 + a2^2 + a3^2 + a4^2 + a5^2) % 10으로, 고정 5개 입력에 대한 단순 계산이다.
코드
package day599;
import java.util.*;
public class Day571BOJ2475검증수 {
public static void main(String[] args) throws Exception {
Scanner sc = new Scanner(System.in);
int sum = 0;
for (int i = 0; i < 5; i++) {
int tmp = sc.nextInt();
sum += tmp * tmp;
}
int ans = sum % 10;
System.out.println(ans);
sc.close();
}
}복잡도
- 시간: O(1) — 고정 5회 반복
- 공간: O(1)