백준 2475번: 검증수 (수학, 구현, 사칙연산)
https://www.acmicpc.net/problem/2475
문제
컴퓨터를 제조하는 회사인 KOI 전자에서는 제조하는 컴퓨터마다 6자리의 고유번호를 매긴다. 고유번호의 처음 5자리에는 00000부터 99999까지의 수 중 하나가 주어지며 6번째 자리에는 검증수가 들어간다. 검증수는 고유번호의 처음 5자리에 들어가는 5개의 숫자를 각각 제곱한 수의 합을 10으로 나눈 나머지이다.
예를 들어 고유번호의 처음 5자리의 숫자들이 04256이면, 각 숫자를 제곱한 수들의 합 0+16+4+25+36 = 81 을 10으로 나눈 나머지인 1이 검증수이다.
입력
첫째 줄에 고유번호의 처음 5자리의 숫자들이 빈칸을 사이에 두고 하나씩 주어진다.
예제 입력 1
0 4 2 5 6
예제 출력 1
1
풀이
num = map(int, input().split())
result = 0
for i in num:
result += i**2
print(result%10)
먼저 input().split()을 사용하여 사용자로부터 한 줄에 입력된 5개의 숫자를 공백을 기준으로 분리합니다.
- 그후 map(int, ...)을 통해 각 분리된 문자열을 정수로 변환합니다. 이때, num은 이터레이터(iterator)로, 나중에 for 루프에서 각 숫자에 접근할 수 있습니다.
result 변수를 0으로 초기화합니다. 이 변수는 제곱한 수들의 합을 저장합니다.
- for 루프를 통해 num 이터레이터의 각 숫자 i를 제곱(i**2)한 값을 result에 더합니다.
- 그후, result에 저장된 제곱 합을 10으로 나눈 나머지를 계산합니다 (result % 10)
'⌨️ Python & Algorithm' 카테고리의 다른 글
[백준] 2439번: 별 찍기 - 2 (by Python / 파이썬) (0) | 2025.01.23 |
---|---|
[백준] 2753번 : 윤년 (by Python / 파이썬) (0) | 2025.01.22 |
[백준] 10871번 : X보다 작은수 (by Python / 파이썬) (0) | 2025.01.21 |
[Python] Logging (로깅) & 정규 표현식 (0) | 2024.07.17 |
[Python] Advanced Data Type (고급 자료형) (0) | 2024.07.16 |