bzoj3767 A+B Problem加强版
Description
Input
Output
输出A+B。
Sample Input
Sample Output
HINT
对于100%的数据,保证 |A| , |B| 不会超过10^(10^7)
呃……高精a+b和a-b的模板题
没啥技术含量的……我还以为会有什么--0之类的出现
- #include<cstdio>
- #include<cstring>
- #define N 10000010
- int a[N],b[N],c[N],l1,l2,l3;
- char ch1[N],ch2[N];
- bool m1,m2;
- inline int max(int a,int b){return a>b?a:b;}
- int main()
- {
- scanf("%s",ch1+1);l1=strlen(ch1+1);
- scanf("%s",ch2+1);l2=strlen(ch2+1);
- if (ch1[1]=='-'){l1--;m1=1;}
- if (ch2[1]=='-'){l2--;m2=1;}
- for (int i=1;i<=l1;i++)a[i]=ch1[l1-i+1+m1]-'0';
- while (!a[l1]&&l1>1)l1--;
- if (l1==1&&!a[1])m1=0;
- for (int i=1;i<=l2;i++)b[i]=ch2[l2-i+1+m2]-'0';
- while (!b[l2]&&l2>1)l2--;
- if (l2==1&&!b[1])m2=0;
- l3=max(l1,l2);
- if (m1^m2)
- {
- if (m1)
- {
- for (int i=1;i<=l3;i++)
- {
- int t=a[i];
- a[i]=b[i];
- b[i]=t;
- }
- int t=l1;l1=l2;l2=t;
- }
- bool mrk=0;
- if (l2>l1)mrk=1;
- else if (l1==l2)
- {
- for (int i=l1;i>=1;i--)
- if (a[i]<b[i]){mrk=1;break;}
- else if (a[i]>b[i])break;
- }
- if (mrk)
- {
- printf("-");
- for (int i=1;i<=l3;i++)
- {
- int t=a[i];
- a[i]=b[i];
- b[i]=t;
- }
- int t=l1;l1=l2;l2=t;
- }
- for (int i=1;i<=l3;i++)
- {
- a[i]-=b[i];
- if (a[i]<0)
- {
- a[i]+=10;
- int p=i+1;
- while (a[p]==0)
- {
- a[p]=9;
- p++;
- }
- a[p]--;
- }
- }
- while (l3>1&&!a[l3])l3--;
- for (int i=l3;i>=1;i--)
- printf("%d",a[i]);
- }else
- {
- if (m1&&m2)printf("-");
- for (int i=1;i<=l3;i++)
- {
- c[i]+=a[i]+b[i];
- if (c[i]>9)
- {
- c[i]-=10;
- c[i+1]++;
- }
- }
- if (c[l3+1])l3++;
- for (int i=l3;i>=1;i--)
- printf("%d",c[i]);
- }
- }
bzoj3767 A+B Problem加强版的更多相关文章
- bzoj3767A+B Problem加强版
bzoj3767A+B Problem加强版 题意: 求两个数的和,每个数绝对值≤10^(10^7). 题解: 又用Python水过了…… 代码: a=raw_input() b=a.split() ...
- 打FFT时中发现的卡常技巧
题目:洛谷P1919 A*B Problem 加强版 我的代码完全借鉴boshi,然而他380ms我880ms...于是我通过彻底的卡(chao)常(dai)数(ma)成功优化到了380ms,都是改了 ...
- bzoj AC倒序
Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem ...
- 算法笔记_093:蓝桥杯练习 Problem S4: Interesting Numbers 加强版(Java)
目录 1 问题描述 2 解决方案 1 问题描述 Problem Description We call a number interesting, if and only if: 1. Its d ...
- java实现 蓝桥杯 算法提高 Problem S4: Interesting Numbers 加强版
1 问题描述 Problem Description We call a number interesting, if and only if: 1. Its digits consists of o ...
- HDU 4578 - Transformation - [加强版线段树]
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4578 Problem Description Yuanfang is puzzled with the ...
- POJ 3294 Life Forms [最长公共子串加强版 后缀数组 && 二分]
题目:http://poj.org/problem?id=3294 Life Forms Time Limit: 5000MS Memory Limit: 65536K Total Submiss ...
- 3551: [ONTAK2010]Peaks加强版
3551: [ONTAK2010]Peaks加强版 https://www.lydsy.com/JudgeOnline/problem.php?id=3551 分析: kruskal重构树 + 倍增 ...
- 贞鱼传教&&贞鱼传教(数据加强版)
http://acm.buaa.edu.cn/problem/1381/ 贞鱼传教[问题描述] 新的一年到来了,贞鱼哥决定到世界各地传授“贞教”,他想让“贞教”在2016年成为世界第四大宗教.说干就干 ...
随机推荐
- C++中的构造函数和析构函数
构造函数: 在类实例化对象时自动执行,对类中的数据进行初始化.构造函数可以从载,可以有多个,但是只能有一个缺省构造函数. 析构函数: 在撤销对象占用的内存之前,进行一些操作的函数.析构函数不能被重载, ...
- MVC项目,系统找不到指定的文件。(异常来自 HRESULT:0x80070002)
今天在用Visual Studio新建MVC项目的时候,遇到错误 系统找不到指定的文件.(异常来自 HRESULT:0x80070002) 解决办法:工具--> 扩展和更新 -->联机(V ...
- Repeater的ItemDataBound 事件中e.Item.DataItem 的数据类型
1.使用DataSet和DataTable绑定数据源时 DataRowView view = (DataRowView)e.Item.DataItem; 2.DataReader绑定数据源时 Syst ...
- php锁表
用PHP实现mysql锁表 mysql锁表,是利用相关的SQL语句 //执行SQL语句 锁掉userinfo表 $sql = "LOCK TABLES userinfo WRITE" ...
- eclipse中build path 中JDK与java compiler compliance level的问题(转)
roject facets做什么用? http://baike.baidu.com/view/6257360.htm,其实我感觉,就是让我们在创建项目时候,可以独立定义一个有一个模板供我们使用,在里面 ...
- ORACLE日期加减【转】
首先,感谢这个作者的辛勤汗水给我们带来的总结,因为日期函数操作对平时的使用真的是很常用,所以收藏一下以作后期使用. 原贴地址:http://www.cnblogs.com/xiao-yu/archiv ...
- Ehcache入门(一)——开发环境的搭建
EhCache 是一个纯Java的进程内缓存框架,具有快速.精干等特点,是Hibernate中默认的CacheProvider. 那么.如何搭建Ehcache的开发环境呢? 1.下载相关的jar包,这 ...
- printf格式输出总结
#include<stdio.h> #include<string.h> int main() { ]; ; floa ...
- Android触摸事件的分发机制
---恢复内容开始--- 一.MotionEvent : ACTION_DOWN(下按事件).ACTION_UP(松开事件).ACTION_MOVE(移动事件) 二.三大函数 1.dispatchTo ...
- 托盘图标、气泡以及任务栏崩溃后的自动添加——Shell_NotifyIcon
托盘图标使用函数 Shell_NotifyIcon 创建.修改和删除,参数主要使用 NOTIFYICONDATA 结构. 任务栏启动时会给所有顶层窗口发送 TaskbarCreated 消息,由于不同 ...