기초 프로그래밍/Python

[백준] 3052번 파이썬 python(나머지)

Chaerry._o 2023. 8. 13. 19:07
반응형

▷ 문제

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

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

 

전체 코드

n = []

for i in range(10):
    m = int(input())
    n.append(m%42)

print(len(set(n)))

 

코드 분석

n = []

리스트 n을 만든다.

 

for i in range(10):
    m = int(input())
    n.append(m%42)

리스트 n에 입력한 값을 42로 나눈 나머지를 넣어준다.

 

for 문을 사용해 10번 반복하는 반복문을 만든다.

input() 함수를 사용해 변수 m에 입력한 요소를 문자열로 저장한다. int() 함수를 사용해 문자열을 정수형으로 바꿔준다.

append() 함수를 사용해 입력한 값을 42로 나눴을 때의 나머지를 리스트 n에 추가한다.

 

print(len(set(n)))

리스트 n에 서로 다른 값의 개수를 출력한다.

 

set() 함수를 사용해 리스트 n에 있는 값을 집합 자료형으로 변환한다. 그렇게 되면 중복된 값들이 제거된다.

len() 함수를 사용해 집합 n에 있는 값의 개수를 출력한다.

반응형