코딩공부/알고리즘

[파이썬 풀이] 백준 10430.나머지

잉옐잉 2021. 11. 3. 21:09

문제   

(A+B)%C는 ((A%C) + (B%C))%C 와 같을까?

(A×B)%C는 ((A%C) × (B%C))%C 와 같을까?

세 수 A, B, C가 주어졌을 때, 위의 네 가지 값을 구하는 프로그램을 작성하시오.

 

입력   

첫째 줄에 A, B, C가 순서대로 주어진다. (2 ≤ A, B, C ≤ 10000)

ex) 5 8 4

 

출력   

첫째 줄에 (A+B)%C, 둘째 줄에 ((A%C) + (B%C))%C, 셋째 줄에 (A×B)%C, 넷째 줄에 ((A%C) × (B%C))%C를 출력한다.

ex) 1 1 0 0

 

코드   

A,B,C=input().split()
A=int(A)
B=int(B)
C=int(C)

print((A+B)%C)
print(((A%C)+(B%C))%C)
print((A*B)%C)
print(((A%C)*(B%C))%C)

 

관련 개념 정리   

파이썬에서는 값을 사용자로부터 입력받을때 input함수를 사용합니다.

입력받은 값을 넣을 변수 이름 = input("띄울 메세지")

 

단! input함수는 입력받은 모든 내용을 문자열로 인식합니다. 따라서 입력받은 내용을 정수로 변환하려면

d = int(input())

와 같은 형태로 작성하거나,  나중에 변수를 사용할때

print(int(d)+2)

와 같이 int()로 감싸서 작성할 수 있습니다.

 

 

또한 값을 입력받을 때, 한 번에 여러 값을 입력받을 수 있습니다.
그때 사용할 수 있는 함수가 바로 split 함수입니다.

split할 변수 이름.split('구분자')

 

만약 split()일 경우, space, tap, enter와 같은 공백을 기준으로 문자열을 나눕니다.

 

 

변수와 변수를 더하고 싶을 때는 +라는 연산자를 사용합니다.

a = 6
b = 2

print(a+b)
# 8

 

 

변수와 변수를 곱하고 싶을 때는 *라는 연산자를 사용합니다.

a = 7
b = 3

print(a*b)
# 21

 

 

변수를 변수로 나눈 나머지를 구하고 싶을 때는 %라는 연산자를 사용합니다.

a = 8
b = 3

print(a%b)
# 2