https://www.acmicpc.net/problem/10178
문제분석
정수 입력을 받아 그 정수만큼 loop 문을 돌려서 2개의 정수를 입력 받고 그 몫과 나머지를 출력하는 문제이다.
몫과 나머지를 출력할 때, 문자열을 함께 출력해야 한다.
C++ 언어에서는 단순히 입출력 함수를 쓰면 되지만,
파이썬에서 이 문제를 풀기 위해서는 format이나 print(f) 함수를 사용해야 한다.
코드
a = int(input())
for _ in range(a):
n, m = map(int, input().split())
print(f'You get {n//m} piece(s) and your dad gets {n%m} piece(s).')
문제풀이
파이썬에서 이 문제를 푸는 방법에는 .format() 형식을 사용하는 방법과
f-string formatting을 사용하는 방법 두 가지가 존재한다.
우선, a에 정수를 입력받아 몇 번의 loop를 돌 것인지 정해준다.
단순히 a번만큼 loop를 돌면 되기 때문에 따로 i를 쓰지 않고 for _ in range(a) 형태로 loop문을 작성한다.
loop 내에서는 사탕의 개수와 인원수를 입력받기 위해 n과 m을 써주고,
출력문을 print(f) 형식으로 지정하여 대괄호 내에 몫과 나머지를 출력할 수 있도록 해준다.
이와 같이 print(f) 형식으로 쓰는 것을 f-string formatting이라 하며,
단순 .format() 형식보다 좀 더 간단하게 출력이 가능하다는 장점이 존재한다.
'Koala - 5기 > 기초 알고리즘 스터디' 카테고리의 다른 글
[백준/python] 13752번 히스토그램 (0) | 2022.01.16 |
---|---|
[백준/python] 11022번 A + B - 8 (0) | 2022.01.15 |
기초 알고리즘 스터디 1주차 모의 테스트 해설 (0) | 2022.01.15 |
[백준/C++] 10989번 수 정렬하기 - 3 (1) | 2022.01.10 |
기초 알고리즘 스터디 출석부 (0) | 2022.01.08 |