백준 1차원배열 3052(Python)

Wonbin Lee·2022년 2월 18일
0

algorithm diary

목록 보기
2/3

백준 3052 (나머지)


풀이

lst = []

for a in range(10):
    a = int(input())
    b = a % 42
    lst.append(b)
    
print(len(set(lst)))

입력한값을 42로 나눈 나머지 값을 구하는 문제이다.
우선 빈 리스트를 'lst'란 변수에 저장해주었다. 그리고 for문을 통해 'a'란 변수에 문제에서 제시한대로 정수형 input값을 10개 넣어줬다. 'b'라는 변수에는 입력받은 a의값을 42로 나눈 나머지 값을 저장해주었다.

그리고 b를 append를 통해 하나씩 lst에 추가해주었다. 이러면 나머지 값은 모두 lst에 들어있다.
여기서 문제는 각각 다른 나머지 값만 출력해야한다는 것이다. 이는 겹치는 나머지는 출력되면 안된다는것인데, lst를 set함수를 통해 바꿔주면 중복되는값이 사라진다는 점을 이용하여 문제를 해결하였다.

그리고 len() 을통해 lst에 남아있는 요소들을 세어준뒤 출력해주면 문제는 끝이난다.


문제 출처:https://www.acmicpc.net/problem/3052

profile
Developer who level up every day ✌️

0개의 댓글