AcWing 794. 高精度除法
原题链接
简单
作者:
已关机
,
2020-11-09 08:29:30
,
所有人可见
,
阅读 508
Golang 代码
package main
import "fmt"
func div(A []int, b int) (res []int, r int) {
for i := len(A) - 1; i >= 0; i-- {
r = r*10 + A[i]
res = append(res, r/b)
r %= b
}
var index int = 0
for ; res[index] == 0 && index < len(res) - 1; index++ {
}
return res[index:], r
}
func main() {
var a string
var b int
fmt.Scanf("%s", &a)
fmt.Scanf("%d", &b)
A := make([]int, 0)
for i := len(a) - 1; i >= 0; i-- {
A = append(A, int(a[i]-'0'))
}
C, r := div(A, b)
for i := 0; i < len(C); i++ {
fmt.Printf("%d", C[i])
}
fmt.Printf("\n%d", r)
}