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]));
    }
}
相关推荐
用户67570498850213 分钟前
Go 语言里判断字符串为空,90% 的人都写错了!
后端·go
用户67570498850223 分钟前
Go 进阶必修:90% 的人都没用对的“表驱动法”
后端·go
小兔崽子去哪了23 分钟前
Java 生成二维码解决方案
java·后端
苍何26 分钟前
懂事的 Agent 已经开始自己看屏幕干活了,效率起飞!
后端
掘金码甲哥1 小时前
1分钟买不了吃亏系列: nginx动态域名解析
后端
神奇小汤圆1 小时前
2026大厂Java岗面试记录:八股+场景+项目+AI,一文讲透快速上岸路径(含答案)
后端
神奇小汤圆1 小时前
我说MySQL每张表最好不超过2000万条数据,面试官让我回去等通知?
后端
HuanYu1 小时前
JDK实现动态代理
后端
袋鱼不重2 小时前
解决 Web 端图片预览与下载颜色不一致的一种工程方案
前端·后端
lizhongxuan2 小时前
Agent 的 Code-driven Assembly
后端