Java 大数加法HdAcm1002
1 import java.util.Scanner;
2
3
4 public class Main {
5 public static void main(String[] args) {
6 Scanner cin = new Scanner(System.in);
7 int n = cin.nextInt();
8 String num1 = "";
9 String num2 = "";
10 int m = 1;
11 while(m <= n){
12 num1 = cin.next();
13 num2 = cin.next();
14 int len1 = num1.length();
15 int len2 = num2.length();
16 int lenMin = len1 < len2 ? len1:len2;
17 int lenMax = len1 > len2 ? len1:len2;
18 char[] res = new char[lenMax+1];
19 //开始进位 为 0
20 int jinwei = 0;
21 //从两个字符串的尾部开始计算
22 for(int i = 1; i <= lenMin; i++){
23 int a = num1.charAt(len1 - i) - '0';
24 int b = num2.charAt(len2 - i) - '0';
25 if(a + b + jinwei <= 9){
26 //res 的长度为 lenMax
27 res[lenMax + 1 - i] = (char)(a + b + jinwei + '0');
28 jinwei = 0;
29 }
30 else{
31 res[lenMax + 1 - i] = (char)(a + b - 10 + jinwei + '0');
32 jinwei = 1;
33 }
34 }
35 //将长字符串的值赋给res
36 if(lenMax == len1){
37 for(int j = len1 - lenMin - 1; j >= 0;j--) {
38 int a = num1.charAt(j) - '0';
39 if( a + jinwei <= 9){
40 res[j+1] = (char)(a + jinwei + '0');
41 jinwei = 0;
42 }
43 else{
44 res[j+1] = (char)(a + jinwei - 10 + '0');
45 jinwei = 1;
46 }
47 }
48 }
49 else{
50 for(int j = len2 - lenMin - 1; j >= 0;j--) {
51 int a = num2.charAt(j) - '0';
52 if( a + jinwei <= 9){
53 res[j+1] = (char)(a + jinwei + '0');
54 jinwei = 0;
55 }
56 else{
57 res[j+1] = (char)(a + jinwei - 10 + '0');
58 jinwei = 1;
59 }
60 }
61 }
62 System.out.println("Case" + " " + m + ":");
63 if(jinwei == 1){
64 res[0] = '1';
65 System.out.println(num1 + " " + "+" + " " + num2 + " " + "=" + " " + String.valueOf(res));
66 }
67 else {
68 System.out.println(num1 + " " + "+" + " " + num2 + " " + "=" + " " + String.valueOf(res, 1, lenMax));
69 }
70 if(m < n){
71 System.out.println();
72 }
73 m++;
74 }
75 cin.close();
76 }
77 }
Java 大数加法HdAcm1002的更多相关文章
- hdu 1002 Java 大数 加法
http://acm.hdu.edu.cn/showproblem.php?pid=1002 PE 由于最后一个CASE不须要输出空行 import java.math.BigInteger; i ...
- java实现大数加法、乘法(BigDecimal)
之前写过用vector.string实现大数加法,现在用java的BigDecimal类,代码简单很多.但是在online-judge上,java的代码运行时间和内存大得多. java大数加法:求a+ ...
- 51 Nod 1005 大数加法【Java大数乱搞,python大数乱搞】
1005 大数加法 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 给出2个大整数A,B,计算A+B的结果. Input 第1行:大数A 第2行:大数B (A,B的长度 ...
- Java实现大数加法运算的几种方法
大数加法 思路一:定义String变量str1和str2分别存储输入的两个大数,定义num1[]和num2[]两个int型数组,将两个字符串分别逐个字符逆序存入数组,定义sum[]数组存放求和结果,使 ...
- Java实现 蓝桥杯VIP 算法提高 大数加法
算法提高 大数加法 时间限制:1.0s 内存限制:256.0MB 问题描述 输入两个正整数a,b,输出a+b的值. 输入格式 两行,第一行a,第二行b.a和b的长度均小于1000位. 输出格式 一行, ...
- JAVA大数运算
java大数是个好东西,用起来方便,代码短. 代码如下: import java.util.*; import java.math.*; public class Main { public stat ...
- HDU1002大数加法
大数加法 c++版: #include <map> #include <set> #include <stack> #include <queue> # ...
- JAVA大数类练手
今天突然看到了OJ上的大数类题目,由于学习了一点大数类的知识.果断水了6道题......都是非常基础的.就当的练手的吧. 学到的只是一些大数类的基本操作.以后多做点这样的题,争取熟练运用水大数题... ...
- 收藏的一段关于java大数运算的代码
收藏的一段关于java大数运算的代码: package study_02.number; import java.math.BigDecimal; import java.math.BigIntege ...
随机推荐
- YARN调度器(Scheduler)详解
理想情况下,我们应用对Yarn资源的请求应该立刻得到满足,但现实情况资源往往是有限的,特别是在一个很繁忙的集群,一个应用资源的请求经常需要等待一段时间才能的到相应的资源.在Yarn中,负责给应用分配资 ...
- Halcon——图像增强算子以及分类
摘要 图像增强就是指通过某种图像处理方法对退化的某些图像特征,如边缘.轮廓.对比度等进行处理,以改善图像的视觉效果,提高图像的清晰度,或是突出图像中的某些"有用",压缩其他&quo ...
- Jmeter 学习 搭建(1)
功能 1.web自动化测试 2.接口测试 3.压力测试 4.性能测试 5.通过jdbc进行数据库测试 6.java测试 优缺点 优点 1.开源,可扩展性好 2.GUI界面,小巧灵活 3.100% j ...
- java内存模型——重排序
线程安全问题概括来说表现为三个方面:原子性,可见性和有序性. 在多核处理器的环境下:编译器可能改变两个操作的先后顺序:处理器可能不是完全依照程序的目标代码所指定的顺序执行命令:一个处理器执行的多个操作 ...
- python读取数据写入excel的四种操作
Python对Excel的读写主要有:xlrd.xlwt.xlutils.openpyxl.xlsxwriter几种 xlutils结合xlrd: 操作的是以xls后缀的excel,读取文件保留原格式 ...
- 华为视频编辑服务(Video Editor Kit),助力开发者高效构建应用视频编辑能力
视频编辑服务(Video Editor Kit)是华为开放给开发者快速构建视频编辑能力的服务,提供视频导入.编辑处理.特效渲染.视频导出.媒体资源管理等一站式视频处理能力.视频编辑服务为全球开发者提供 ...
- QT从入门到入土(四)——多线程(QtConcurrent::run())
引言 在前面对Qt多线程(QThread)做了详细的分析:QT从入门到入土(四)--多线程(QThread) - 唯有自己强大 - 博客园 (cnblogs.com) 但是最近在做项目时候,要将一个函 ...
- 造轮子系列之RPC 1:如何从零开始开发RPC框架
前言 RPC 框架是后端攻城狮永远都绕不开的知识点,目前业界比较知名有 Dubbo.Spring Cloud 等.很多人都停留在了只会用的阶段,作为程序猿,拥有好奇心深入学习,才能有效提高自己的竞争力 ...
- 6轮面试辛苦拿到阿里Android开发offer,却从22k降到15k,在逗我?
一小伙工作快3年了,拿到了阿里云Android开发岗位P6的offer,算HR面一起,加起来有6轮面试了,将近3个月的时间,1轮同级 + 1轮Android用人部门leader + 1轮Android ...
- Adaptive AUTOSAR 学习笔记 14 - 车辆诊断
本系列学习笔记基于 AUTOSAR Adaptive Platform 官方文档 R20-11 版本 AUTOSAR_EXP_PlatformDesign.pdf.作者:Zijian/TENG 原文地 ...