728x90
https://www.acmicpc.net/problem/3052
42로 나눈 나머지를 새로운 리스트에 저장하고, 중복된 값을 제외시키는 과정이 필요하다.
1 : for문을 사용한 풀이법
arr = []
for i in range(10):
a = int(input())
if a%42 not in arr:
arr.append(a % 42)
print(len(arr))
새로운 리스트에 넣을 a%42(a를 42로 나눈 나머지)가 리스트 arr에 포함되어 있는지 확인하는 과정을 걸친 후, 마지막으로 리스트의 길이를 출력하는 방법.
2 : set()함수를 사용한 풀이법
set()함수는 중복된 값을 뺄 수 있으나, 순서가 뒤죽박죽이 된다. 이 문제에서는 순서대로 출력할 필요가 없으므로 사용가능하다.
arr = []
for i in range(10):
a = int(input())
arr.append(a % 42)
print(len(set(arr)))
728x90
'알고리즘 문제 풀이' 카테고리의 다른 글
[python] 백준 1157 : 단어 공부 (0) | 2022.01.29 |
---|---|
[python] 백준 10809 : 알파벳 찾기 (0) | 2022.01.28 |
[python] 백준 2920 : 음계 (0) | 2022.01.28 |
[python] 백준 2908 : 상수 (0) | 2022.01.27 |
[python] 백준 1152 : 단어의 개수 (0) | 2022.01.23 |