갑부 최백준 조교는 동전을 최소로 바꾸는데 성공했으나 김재홍 조교가 그 돈을 발견해서 최백준 조교에게 그 돈을 나누자고 따진다.
그 사실이 전 우주로 알려지자 우주에 있던 많은 생명체들이 자신들에게 돈을 분배해 달라고 당장 달려오기 시작했다.
프로토스 중앙 우주 정부의 정책인, ‘모든 지적 생명체는 동등하다’라는 규칙에 입각해서 돈을 똑같이 분배하고자 한다.
한 생명체에게 얼마씩 돈을 줄 수 있는가?
또, 생명체들에게 동일하게 분배한 후 남는 돈은 얼마인가?
첫째 줄에는 최백준 조교가 가진 돈 n과 돈을 받으러 온 생명체의 수 m이 주어진다. (1 ≤ m ≤ n ≤ 101000, m과 n은 10진수 정수)
첫째 줄에 생명체 하나에게 돌아가는 돈의 양을 출력한다. 그리고 두 번째 줄에는 1원씩 분배할 수 없는 남는 돈을 출력한다.
1000 100
10
0
let i = readLine()!.split{$0==" "}.map{Int($0)!}
print("\(i[0]/i[1])\n\(i[0]%i[1])")
let i = readLine()!.split{$0==" "}.map{Int($0)!}
print("\(i[0]/i[1])\n\(i[0]%i[1])")
무엇이 문제냐!!!! 무엇을 원해!! 왜 런타임 에러야!!
알고보니 또 BigInt 문제였다.Swift에서는 Int는 -9223372036854775808부터 9223372036854775807 까지만 수용할 수 있습니다. ( 약 -9 × 1018부터 약 9 × 1018 까지입니다. )
문제에서 1 ≤ m ≤ n ≤ 101000라고 m, n의 조건이 적혀있는데, 이는 Int가 수용하는 범위를 초과하고 있습니다.
Swift로 이 문제를 푸실려면 BigInt를 직접 구현하셔야 합니다.
> 고로 또 나중으로 미뤘다. ㅎㅎ; BigInt 덧셈도 아직 못했다..^^...
## 숏코딩
### 숏코딩 예제 1