Acwing794高精度除法

题目

给定两个非负整数(不含前导 00) A,B请你计算 A/B 的商和余数。

输入格式

共两行,第一行包含整数 A,第二行包含整数 B

输出格式

共两行,第一行输出所求的商,第二行输出所求余数。

数据范围

1≤A的长度≤100000 1≤B≤10000 B 一定不为 00

输入样例:

复制代码
7
2

输出样例:

复制代码
3
1

代码

java 复制代码
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class Main {
    static int yu;

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String s = in.next();
        int[] a = new int[s.length()];
        for (int i = 0 ;i < s.length();i ++) {
            a[i] = s.charAt(i) - '0';
        }
        int b = in.nextInt();
        Integer[] c = div(a, b);
        for (int i = 0;i < c.length;i ++) {
            System.out.print(c[i]);
        }
        System.out.println();
        System.out.println(yu);
    }

    private static Integer[] div(int[] a, int b) {
        List<Integer> sc = new ArrayList<>();
        int r = 0;
        for (int i =0;i < a.length;i ++) {
            r = r * 10 + a[i];
            sc.add(r / b);
            r = r % b;
        }
        yu = r;
        while (!sc.isEmpty() && sc.get(0) == 0) {
            sc.remove(0);
        }
        if(sc.isEmpty())    sc.add(0);
        return sc.toArray(sc.toArray(new Integer[0]));
    }
}
相关推荐
李广坤5 分钟前
Springboot解决跨域的五种方式
后端
赴前尘7 分钟前
Go 通道非阻塞发送:优雅地处理“通道已满”的场景
开发语言·后端·golang
cxyxiaokui00115 分钟前
🔥不止于三级缓存:Spring循环依赖的全面解决方案
java·后端·spring
一线大码22 分钟前
开发 Java 项目时的命名规范
java·spring boot·后端
neoooo23 分钟前
Apollo兜底口诀
java·后端·架构
程序员小假23 分钟前
什么是线程池?它的工作原理?
java·后端
盖世英雄酱5813630 分钟前
java 深度调试【第一章:堆栈分析】
java·后端
lastHertz1 小时前
Golang 项目中使用 Swagger
开发语言·后端·golang
渣哥1 小时前
面试高频:Spring 事务传播行为的核心价值是什么?
javascript·后端·面试
调试人生的显微镜1 小时前
iOS 代上架实战指南,从账号管理到使用 开心上架 上传IPA的完整流程
后端