백준 01271번 / 1271번 문제 링크
문제 이름 : 엄청난 부자2
주 언어 : Python
태그 : 수학 / 사칙연산 / 임의 정밀도 & 큰 수 연산
solved.ac 등급 : Bronze V (2023/03/01 확인)
문제 보기
문제 :
갑부 최백준 조교는 동전을 최소로 바꾸는데 성공했으나 김재홍 조교가 그 돈을 발견해서 최백준 조교에게 그 돈을 나누자고 따진다.
그 사실이 전 우주로 알려지자 우주에 있던 많은 생명체들이 자신들에게 돈을 분배해 달라고 당장 달려오기 시작했다.
프로토스 중앙 우주 정부의 정책인, ‘모든 지적 생명체는 동등하다’라는 규칙에 입각해서 돈을 똑같이 분배하고자 한다.
한 생명체에게 얼마씩 돈을 줄 수 있는가?
또, 생명체들에게 동일하게 분배한 후 남는 돈은 얼마인가?
입력 :
첫째 줄에는 최백준 조교가 가진 돈 n과 돈을 받으러 온 생명체의 수 m이 주어진다. (1 ≤ m ≤ n ≤ $10^{1000}$, m과 n은 10진수 정수)
출력 :
첫째 줄에 생명체 하나에게 돌아가는 돈의 양을 출력한다. 그리고 두 번째 줄에는 1원씩 분배할 수 없는 남는 돈을 출력한다.
(해당 글은 파이썬으로 풀 경우를 상정한 경우입니다. C나 C++ 계열인 경우 풀이가 아득해집니다.)
n원을 m명(생명체의 수인데 "명"을 써야하는지는 모르겠지만)으로 나누어야 하니까 n을 m으로 나눈 몫, n을 m으로 나눈 나머지를 각각 출력해주면 됩니다.
파이썬에서는 정수 나눗셈이 // 임을 유의하고, 나머지 연산자는 % 임을 알고 있으면 됩니다.
한 줄에 입력이 주어지므로 n, m = map(int, input().split()) 꼴로 입력을 쪼개서 받을 수 있습니다.
C, C++ 같은 BigInt가 안되는 언어들은...직접 만드시는거 말고는 답이 없습니다.
이 문제만을 위한 BigInt 말고 이런 문제들에 다 쓸 수 있는 개인용 BigInt 클래스를 만들어야겠습니다.
-번째 푼 문제 (2022/--/--)