PAT乙级Java实现_1017 A除以B (20) _附详细解题注释_17

PAT 乙级真题——1027 打印沙漏 (20 分) 阅读详情

1017 A除以B (20)(20 分)

本题要求计算A/B,其中A是不超过1000位的正整数,B是1位正整数。你需要输出商数Q和余数R,使得A = B * Q + R成立。

输入格式:

输入在1行中依次给出A和B,中间以1空格分隔。

输出格式:

在1行中依次输出Q和R,中间以1空格分隔。

输入样例:

123456789050987654321 7

输出样例:

17636684150141093474 3
作者: CHEN, Yue
单位: PAT联盟
时间限制: 100ms
内存限制: 64MB
代码长度限制: 16KB

package pat_b;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
//A不超过1000位,但已经超出了数字范围,所以要用字符串或字符数组的形式处理
//注意边界情况,1个是商可能是0开头的,1个是商可能刚好为0。
public class PAT_B_1017
{
	public static void main(String[] args) throws IOException
	{
		BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
		String[] input = in.readLine().split("\\s+");//将被除数A与除数B分开为两个字符串
		
		String A = input[0];//A
		int B = Integer.valueOf(input[1]);//提取B的数值
		StringBuilder result  = new StringBuilder();//商结果,用来存储商的结果。当需要频繁改变一个字符串时,用StringBuilder效率更高
		
		int shang = 0, yu = 0;//存储每一位商和余数的值
		boolean zero = true;//用来标记第一次商非0的情况
		for(int i = 0; i < A.length(); i++)//对A字符串中的每位数字进行除以B的运算
		{
			shang = ((A.charAt(i)-'0') + yu*10) / B;
			yu = ((A.charAt(i)-'0') + yu*10) % B;
			if(zero == true)//如果之前的商都为0
			{
				if(shang == 0)//这次的商也为0,则跳过
					continue;
				else
				{
					zero = false;//这次的商不为0了,则改变标志
				}
			}
			result.append(shang);//将第一次非0商的之后的商都添加到商结果
		}
		
		if(result.length() == 0 )//如果商结果什么都没有,就是0
			result.append(0);
		System.out.print(result + " " + yu);
	}
}


1020空心杯电机驱动设计与ESP32实战 空心杯电机是一种高动态响应的直流微特电机,其驱动本质是解决电感负载下的大di/dt启动、反电动势耦合与电流纹波抑制问题。核心原理在于建立包含内阻、电感和反电动势的等效电路模型,并据此匹配开关器件、PWM参数与采样闭环。技术价值体现在小体积下实现毫秒级响应、低噪声(>30kHz)、高精度电流保护(±50mA)及热鲁棒性。典型应用于微型航模、手持云台与精密执行器等对功率密度和动态性能敏感的嵌入式系统。本文以1020规格空心杯电机为对象,基于ESP32平台完成从MOSFET选型、32kHz硬件PWM生成到INA2 阅读详情

相关推荐

强网杯Web题ezphp解题全记录:利用PHP反序列化与条件竞争拿下服务器

本文详细解析了强网杯Web题目ezphp的解题过程,通过PHP反序列化与条件竞争漏洞的组合利用,成功获取服务器权限。文章深入剖析了反序列化链的构造、文件上传绕过技巧以及条件竞争的实际应用,为CTF选手和Web安全研究者提供了宝贵的实战经验。

weixin_29006187的博客 381

1017 A除以B(JAVA)

1017 A除以B(JAVA)

小羊不会飞的博客 889

汽车OTA自动化测试解决方案

目前OTA远程升级技术已成为众多汽车制造商的标配。由于OTA升级可能会带来潜在的风险(特别是包含ECU固件更新的FOTA升级),针对OTA系统的测试过程就尤为重要。

东舟技术的博客 7760

Java(详解) 1017 A除以B (20 分)

本题要求计算 A/B,其中 A 是不超过 1000 位的正整数,B 是 1 位正整数。你需要输出商数 Q 和余数 R,使得 A=B×Q+R 成立。 输入格式: 输入在一行中依次给出 A 和 B,中间以 1 空格分隔。 输出格式: 在一行中依次输出 Q 和 R,中间以 1 空格分隔。 输入样例: 123456789050987654321 7 输出样例: 17636684150141093474 3...

NewGe6的博客 1764

华为云Stack交付实战:从工勘到上线的全流程拆解

本文详细拆解华为云Stack交付全流程,从项目启动、工勘、LLD设计到硬件部署和软件安装,提供实战技巧与避坑指南。重点解析华为云Stack交付流程中的关键环节,如标准化工具使用、规范化文档管理和流程化协作,帮助团队高效完成从工勘到上线的复杂项目交付。

weixin_29243063的博客 156

无人驾驶感知融合——横摆角速度的多源估计算法解析

本文深入解析了无人驾驶感知融合中的横摆角速度多源估计算法,详细介绍了轮速差法、侧向加速度法、曲率法和惯性传感器直读法四种计算方法及其优缺点。通过卡尔曼滤波实战案例,展示了多源融合算法在提升精度和稳定性方面的显著优势,并探讨了工程实践中的时间对齐、坐标系统一等关键问题。

weixin_31458015的博客 462

【Java】1017 A除以B (20 分)

1017 A除以B (20 分) 本题要求计算 A/B,其中 A 是不超过 1000 位的正整数,B 是 1 位正整数。你需要输出商数 Q 和余数 R,使得 A=B×Q+R 成立。 输入格式: 输入在一行中依次给出 A 和 B,中间以 1 空格分隔。 输出格式: 在一行中依次输出 Q 和 R,中间以 1 空格分隔。 输入样例: 123456789050987654321 7 输出样例: 17636684150141093474 3 Java 代码: import java.io.BufferedRead

zhengh513的博客 340

Emotion-LLaMA实战指南:从零构建多模态情感识别系统(附Python代码)

本文提供了Emotion-LLaMA多模态情感识别系统的实战指南。通过详细的步骤,指导读者从零搭建开发环境、运行本地Demo、理解模型架构,并完成数据处理与模型训练。该创新模型融合视觉、听觉与文本信息,实现更精准、接近人类理解的情感分析与推理,并附有完整的Python代码实现。

weixin_29094775的博客 416

1017. A除以B (20)

本题要求计算A/B,其中A是不超过1000位的正整数,B是1位正整数。你需要输出商数Q和余数R,使得A = B * Q + R成立。 输入格式: 输入在1行中依次给出A和B,中间以1空格分隔。 输出格式: 在1行中依次输出Q和R,中间以1空格分隔。 输入样例: 123456789050987654321 7 输出样例: 17636684150141093474 3

Jason王祖龙 2070

华为OD机试真题 新系统 - 8位LED控制器 (Java/Py/C/C++/Js/Go)

本文整理华为 OD 机试新系统机考真题库,涵盖高频考点精析与完整题目内容,提供 C 语言、Java、C++、Python、Go、JavaScript 多语言源码实现,搭配详细解题思路讲解,并支持在线 OJ 刷题练习,助力高效备考华为 OD 机试新系统。

算法大师! 1976

把入库交货单的 GOS 附件自动带进审批 Work Item:用 SOFM 对象打通 SAP Workflow 附件链路

本文介绍了一种在SAP ECC系统中将入库交货单的GOS附件自动附加到Workflow审批项中的解决方案。通过使用BOR对象引用列表和SOFM业务对象,审批人可直接在Work Item中查看附件,无需返回原单据界面。文章详细阐述了从BUS2015业务对象获取附件连接、转换LOIO_ID为SOFM对象引用,并将附件列表绑定到User Decision步骤的具体实现方法。该方案适用于经典SAP Business Workflow+BOR架构,核心ABAP代码可直接复用,有效解决了审批流程中的附件可见性问题。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 246

1017 A除以B (20分)

1017 A除以B (20分) 题目描述 : -------------------------------------------------------------------------------------------------------------------------------------- 本题要求计算 A/B,其中 A 是不超过 1000 位的正整数,B 是 1 位正整数。你需要输出商数 Q 和余数 R,使得 A=B×Q+R 成立。 输入格式 : -----------------

均瑶味动力的博客 220

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

PAT乙级【Java题解合集】

超级全的PAT的JAVA题解

小羊不会飞的博客 3732

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

PAT乙级1019,附AC代码和题目解析

1019 数字黑洞 (20分) 给定任一个各位数字不完全相同的 4 位正整数,如果我们先把 4 个数字按非递增排序,再按非递减排序,然后用第 1 个数字减第 2 个数字,将得到一个新的数字。一直重复这样做,我们很快会停在有“数字黑洞”之称的6174,这个神奇的数字也叫 Kaprekar 常数。 例如,我们从6767开始,将得到 7766 - 6677 = 1089 9810 - 0189 = 9621 9621 - 1269 = 8352 8532 - 2358 = 6174 7641

优快云_Lrcx的博客 284

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

PAT乙级:1017 A除以B(JAVA)

题目描述: 本题要求计算A/B,其中A是不超过1000位的正整数,B是1位正整数。你需要输出商数Q和余数R,使得A = B * Q + R成立。 输入描述: 输入在1行中依次给出A和B,中间以1空格分隔。 输出描述: 在1行中依次输出Q和R,中间以1空格分隔。 输入例子: 123456789050987654321 7 输出例子: 17636684150141093474 3 第一种就是用BigInteger来解,有点作弊的感觉,java有处理对数值很大的数有个BigInteger,因为这道题不需要求小数点

liuarmyliu的博客 1667

PAT 乙级 1017 A除以B (20分) (JAVA版)

1017A除以B(20分) 本题要求计算A/B,其中A是不超过 1000 位的正整数,B是 1 位正整数。你需要输出商数Q和余数R,使得A=B×Q+R成立。 输入格式: 输入在一行中依次给出A和B,中间以 1 空格分隔。 输出格式: 在一行中依次输出Q和R,中间以 1 空格分隔。 输入样例: 123456789050987654321 7 输出样例: 17636684150141093474 3 自己答案:第一版 package pat; ...

rosemaryyoudu的博客 322

PAT-乙级题库划水体验(JAVA)-1017

1017 A除以B (20分) 本题要求计算 A/B,其中 A 是不超过 1000 位的正整数,B 是 1 位正整数。你需要输出商数 Q 和余数 R,使得 A=B×Q+R 成立。 输入格式: 输入在一行中依次给出 A 和 B,中间以 1 空格分隔。 输出格式: 在一行中输出 P​A​​+P​B​​ 的值。 输入样例: 123456789050987654321 7 输出样例: 1763668415...

qq_43215234的博客 213

PAT_B_1017_Java(20分)

Java.math.BigInteger.divide() 由此BigInteger将被除(即除数),返回BigInteger对象的值(商) Java BigDecimal Java.math.BigInteger.add() 此方法返回BigIntger对象的值, this + val Java.math.BigInteger.multiply() 此方法返回一个保存乘法的BigInteger Java.math.BigInteger.negate() 此方法返回相反数 ...

TYPFOON的博客 167

java-1017 A除以B

本题要求计算 A/B,其中 A 是不超过 1000 位的正整数,B 是 1 位正整数。你需要输出商数 Q 和余数 R,使得 A=B×Q+R 成立。 输入格式: 输入在一行中依次给出 A 和 B,中间以 1 空格分隔。 输出格式: 在一行中依次输出 Q 和 R,中间以 1 空格分隔。 输入样例: 123456789050987654321 7 输出样例: 17636684150...

jdie00的博客 780

PAT乙级——1017(模拟超大整数除法)

PAT乙1017题目:A除以B (20 分)题目分析 题目:A除以B (20 分) 本题要求计算 A/B,其中 A 是不超过 1000 位的正整数,B 是 1 位正整数。你需要输出商数 Q 和余数 R,使得 A=B×Q+R 成立。 输入格式: 输入在一行中依次给出 A 和 B,中间以 1 空格分隔。 输出格式: 在一行中依次输出 Q 和 R,中间以 1 空格分隔。 输入样例: 1234567890...

熊仙森滴Blog 711

PAT_B_1016_Java(15分)

import java.util.Scanner; public class Main{ public static void main(String[] args) { Scanner in = new Scanner(System.in); String A = in.next(); int da = in.nextInt(); String B = in.next(); int db = in.nextInt(); in.close(); long pa = 0; f

TYPFOON的博客 321

1017 A除以B (20 分) ( JAVA )

1017A除以B(20分) 本题要求计算A/B,其中A是不超过 1000 位的正整数,B是 1 位正整数。你需要输出商数Q和余数R,使得A=B×Q+R成立。 输入格式: 输入在一行中依次给出A和B,中间以 1 空格分隔。 输出格式: 在一行中依次输出Q和R,中间以 1 空格分隔。 输入样例: 123456789050987654321 7 输...

~ 1222

(Java)PAT (Basic Level) 1017 A除以B (20 分)

问题描述: 本题要求计算A/B,其中A是不超过 1000 位的正整数,B是 1 位正整数。你需要输出商数Q和余数R,使得A=B×Q+R成立。 输入格式: 输入在一行中依次给出A和B,中间以 1 空格分隔。 输出格式: 在一行中依次输出Q和R,中间以 1 空格分隔。 输入样例: 123456789050987654321 7 输出样例: 17636684150141093474 3 代码: import java.math.BigInteger; im...

m0_52155673的博客 145

A除以B_2

本题要求计算A/B,其中A是不超过1000位的正整数,B是1位正整数。你需要输出商数Q和余数R,使得A = B * Q + R成立。 输入格式: 输入在1行中依次给出A和B,中间以1空格分隔。 输出格式: 在1行中依次输出Q和R,中间以1空格分隔。 输入样例: 123456789050987654321 7 输出样例: 176366841501410934...

weixin_30409849的博客 825

要求计算A/B,其中A是不超过1000位的正整数,B是1位正整数。你需要输出商数Q和余数R,使得A = B * Q + R成立。

题目描述: 本题要求计算A/B,其中A是不超过1000位的正整数,B是1位正整数。你需要输出商数Q和余数R,使得A = B * Q + R成立。 输入描述: 输入在1行中依次给出A和B,中间以1空格分隔。 输出描述: 在1行中依次输出Q和R,中间以1空格分隔。 输入例子: 123456789050987654321 7 输出例子: 17636684150141093474 3 核心思想: 用一个字...

Nothing_but_Fight的博客 1万+

1017 A除以B 计算 A/B,其中 A 是不超过 1000 位的正整数,B 是 1 位正整数。你需要输出商数 Q 和余数 R

因为A是不超1000位的正整数,所以不好用整型数据存储,所以A用字符数组来存储每一位数,这就要用除法的原理一步步来求商

weixin_52270382的博客 1252
上一篇: PAT乙级Java实现_1016 部分A+B (15) _附详细解题注释_16
下一篇: PAT乙级Java实现_1018 锤子剪刀布 (20) _附详细解题注释_18
coder__666
博客等级 码龄9年 42粉丝 52原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值