문제
컴퓨터를 제조하는 회사인 KOI 전자에서는 제조하는 컴퓨터마다 6자리의 고유번호를 매긴다.
고유번호의 처음 5자리에는 00000부터 99999까지의 수 중 하나가 주어지며 6번째 자리에는 검증수가 들어간다.
검증수는 고유번호의 처음 5자리에 들어가는 5개의 숫자를 각각 제곱한 수의 합을 10으로 나눈 나머지이다.예를 들어 고유번호의 처음 5자리의 숫자들이 04256이면,
각 숫자를 제곱한 수들의 합 0+16+4+25+36 = 81 을 10으로 나눈 나머지인 1이 검증수이다.
해석
각 값을 제곱한 합에 10으로 나눈 나머지를 구하면 되는 문제다.
풀이
my_strings = input().strip().split()
my_numbers = [int(x) ** 2 for x in my_strings]
answer = sum(my_numbers) % 10
print(answer)
- input().split()으로 숫자 5개를 문자열 리스트로 받아온다.
- int(x) ** 2를 통해 각 숫자의 제곱을 구하고 리스트로 변환한다.
- sum()으로 제곱들의 합을 구하고, 10으로 나눈 나머지를 출력한다.
요약
실행 시간 | 메모리 사용 |
32ms | 32412KB |
'Study > Algorithm' 카테고리의 다른 글
[백준] 2439번: 별 찍기 - 2 (0) | 2025.04.28 |
---|---|
[백준] 백준 2753번: 윤년 (0) | 2025.04.24 |
[백준] 2438번: 별 찍기 - 1 (0) | 2025.04.24 |
[백준] 6840번: Who is in the middle? (4) | 2025.04.24 |
[항해 알고리즘 스터디] 2주차 과제 정리 (후위 표기법 계산하기 / 중복 없이 가장 긴 문자열 찾기) (2) | 2025.04.24 |