코딩연습장/백준

[백준/Python] 백준 3052번 나머지

gayomii 2023. 8. 22. 10:51

🏆백준 3052번 - 나머지

https://www.acmicpc.net/problem/3052

 

3052번: 나머지

각 수를 42로 나눈 나머지는 39, 40, 41, 0, 1, 2, 40, 41, 0, 1이다. 서로 다른 값은 6개가 있다.

www.acmicpc.net


✍️문제

두 자연수 A와 B가 있을 때, A%B는 A를 B로 나눈 나머지 이다. 예를 들어, 7, 14, 27, 38을 3으로 나눈 나머지는 1, 2, 0, 2이다.

수 10개를 입력받은 뒤, 이를 42로 나눈 나머지를 구한다. 그 다음 서로 다른 값이 몇 개 있는지 출력하는 프로그램을 작성하시오.


정답

result = []

for i in range(10):
    data = int(input())
    result.append (data % 42)
    
result = set(result)
result = list(result)
print(len(result))

💫 해설 및 한줄평

for문을 통해 10개의 숫자를 입력맏은 후 data에 넣어주고, 빈 리스트인 result에 42로 나눈 나머지를 넣어준다.

이후 set으로 변경해 중복을 제거한 후 list로 변환하여 최종 길이를 print한다.

 

밑에 3줄을 한줄로 변경해서 간단하게 표현 가능하니 참고하시길... 

result= []
 
for i in range(10):
    data = int(input())
    result.append(data % 42)
 
print(len(set(result)))

그리고 서치해보니 if문을 써서 result에 중복이 없으면 추가하는것으로 표현이 가능한것을 배웠다!

result= []
 
for i in range(10):
    data = int(input())
    if data %42 not in result:
        result.append(data % 42)
 
print(len(result))

세상에는 똑똑한사람들이 많다.

머리가 나쁘면 손가락이 고생