본문 바로가기

BOJ/Java

[BOJ/백준] 2475 - 검증수 (Python)

문제

문제링크

5개의 숫자를 각각 제곱한 수의 합을 10으로 나눈 나머지를 구하라.

 

풀이

5개의 정수는 한 줄에 공백을 두고 입력되므로 배열로 입력받아 split(" ")한다.

for 문으로 각각의 요소에 접근해 Integer로 변환하고 총합에 제곱을 더해주고 마지막 총합을 출력한다.

Java에서는 제곱 연산자를 직접 사용할 수 없으므로 i*i 사용했다. 

만약 제곱수가 매우 크다면 Math.pow(i, 제곱수);를 사용하는 것이 편리하다. 하지만 부동 소수점 연산을 사용하므로, 정밀도가 떨어질 가능성이 있다.

 

코드

import java.util.*;
import java.lang.*;
import java.io.*;

class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String line = sc.nextLine();
        String[] nums = line.split(" ");
        
        int tot = 0;
        for (String num: nums){
            int i = Integer.parseInt(num);
            tot += i*i;
        }
        System.out.println(tot%10);
    }
}