본문 바로가기
코딩테스트 문제풀이(Python)

백준 10178번 문제풀이

by chanfficial 2022. 4. 19.

10178. 할로윈의 사탕

 

 

할로윈데이에 한신이네는 아부지가 사탕을 나눠주신다. 하지만 한신이의 형제들은 서로 사이가 좋지않아 서른이 넘어서도 사탕을 공정하게 나누어 주지 않으면 서로 싸움이 난다. 매년 할로윈데이때마다 아부지는 사탕을 자식들에게 최대한 많은 사탕을 나누어 주시기 원하며 자신에게는 몇개가 남게되는지에 알고 싶어 하신다. 이런 아부지를 도와서 형제간의 싸움을 막아보자.

 

 

입력 : 가장 첫 번째 줄에는 테스트 케이스의 수가 입력되고, 각 테스트 케이스마다 사탕의 개수 c와 형제의 수 v가 차례대로 입력된다.

출력 : 출력은 예제를 보고 ”You get __ piece(s) and your dad gets __ piece(s).” 형식에 맞추어 적절하게 출력하라.

 

ex)

입력 :

5
22 3
15 5
99 8
7 4
101 5

출력 :

You get 7 piece(s) and your dad gets 1 piece(s).
You get 3 piece(s) and your dad gets 0 piece(s).
You get 12 piece(s) and your dad gets 3 piece(s).
You get 1 piece(s) and your dad gets 3 piece(s).
You get 20 piece(s) and your dad gets 1 piece(s).

 

 

 

풀이

test = int(input())

for i in range(test):
    c, v = map(int, input().split())
    you = int(c / v)
    dad = int(c % v)
    print("You get " + str(you) +
          " piece(s) and your dad gets " + str(dad) + " piece(s).")

- 먼저 테스트 케이스의 수를 입력받은 다음 테이스 케이스의 수 만큼 반복하며 사탕의 개수 c와 형제의 수 g를 입력받았다. 형제들이 각각 나눠받을 사탕의 개수를 you로 지정하고, 사탕의 개수를 형제의 수로 나눈 값을 정수로 변환하여 저장해주었다.

마찬가지로 아버지가 가지게 될 남은 사탕을 dad로 지정하고, 사탕의 개수를 형제의 수로 나누고 남은 나머지를 정수로 변환하여 저장했다.

 

 

주의할 점

처음에 print("You get " + you + " piece(s).....") 의 형식으로 실행했더니

TypeError: can only concatenate str (not "int") to str 라는 에러가 발생했다.

파이썬에서는 문자열과 문자열이 아닌 변수를 + 만을 사용하여 함께 출력할 수 없고,

str(you) 처럼 변수를 문자열로 변환해야 + 로 연결하여 함께 출력할 수 있다.

'코딩테스트 문제풀이(Python)' 카테고리의 다른 글

백준 10569번 문제풀이  (0) 2022.04.20
백준 9295번 문제풀이  (0) 2022.04.19
백준 10995번 문제풀이  (0) 2022.04.18
백준 10991번 문제풀이  (0) 2022.04.18
백준 2446번 문제풀이  (0) 2022.04.17