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]));
    }
}
相关推荐
鶴哥只手遮天12 分钟前
《Redis 8.10.3 深度剖析》系列 · 第 1 章·全景与源码地图:版本谱系、构建体系、全局状态与启动链路
redis·后端·开源
用户4003150433513 分钟前
《从 skynet.timeout 到回调执行:Skynet 分层时间轮源码剖析》
后端
一条Go17 分钟前
四个进程,一把锁:Alioth 的告警评测为什么不需要消息队列
后端·设计模式·架构
用户19961435599628 分钟前
插件是怎么被安全装进系统的
后端
愚农搬码1 小时前
自研表单引擎、开源组件二开和商业产品,企业应该如何选择?
后端
用户298698530141 小时前
Python 自动化处理 Word 页眉页脚的几种典型场景
后端·python·api
愚农搬码2 小时前
一款企业级电子表单系统应该具备哪些功能?
后端
Rain的Java大神之路2 小时前
国家数据集团校招、社招都开了:总部雄安,这些技术岗值得认真看看
java·后端·面试
XW2 小时前
Agent 上下文管理实现详解:从窗口工程到长期记忆
后端
Moment2 小时前
为什么这么多 Agent Harness 都选择 TypeScript
前端·后端·面试