大明A+B
来源:互联网 发布:数据分析属于什么专业 编辑:程序博客网 时间:2024/06/08 14:52
话说,经过了漫长的一个多月,小明已经成长了许多,所以他改了一个名字叫“大明”。
这时他已经不是那个只会做100以内加法的那个“小明”了,现在他甚至会任意长度的正小数的加法。
现在,给你两个正的小数A和B,你的任务是代表大明计算出A+B的值。
这时他已经不是那个只会做100以内加法的那个“小明”了,现在他甚至会任意长度的正小数的加法。
现在,给你两个正的小数A和B,你的任务是代表大明计算出A+B的值。
Input
本题目包含多组测试数据,请处理到文件结束。
每一组测试数据在一行里面包含两个长度不大于400的正小数A和B。
每一组测试数据在一行里面包含两个长度不大于400的正小数A和B。
Output
请在一行里面输出输出A+B的值,请输出最简形式。详细要求请见Sample Output。
Sample Input
1.1 2.91.1111111111 2.34443233431 1.1
Sample Output
43.45554344542.1
#include<stdio.h>#include<string.h>#define MAXN 500char a[MAXN],b[MAXN];int c[MAXN],d[MAXN],e[MAXN],f[MAXN],x[MAXN],y[MAXN];int main(){int i,j,k,m,p,q,len1,len2,t;while(scanf("%s%s",a,b)!=EOF){memset(c,0,sizeof(c));memset(d,0,sizeof(d));memset(e,0,sizeof(e));memset(f,0,sizeof(f));//memset(x,0,sizeof(x));//memset(y,0,sizeof(y));k=len1=strlen(a);for(i=0;i<len1;i++){if(a[i]=='.')k=i;//the point position of first }m=len2=strlen(b);for(i=0;i<len2;i++){if(b[i]=='.')m=i;//the point position of second }/*change char of zhengshu to int */for(j=0,i=k-1;i>=0;i--){c[j++]=a[i]-'0';}for(j=0,i=m-1;i>=0;i--){d[j++]=b[i]-'0';}//change char of xiaoshu to intfor(j=0,i=k+1;i<len1;i++){e[j++]=a[i]-'0';}for(j=0,i=m+1;i<len2;i++){f[j++]=b[i]-'0';}//count the xiaoshup=q=0;if(len1-k<len2-m)p=len2-m;elsep=len1-k;for(i=p-1;i>=0;i--){x[i]=(e[i]+f[i]+q)%10;if(e[i]+f[i]+q>=10){q=(e[i]+f[i]+q)/10;}elseq=0;}//count the zhengsu if(k<m)t=m;elset=k;for(i=0;i<=t;i++){y[i]=(c[i]+d[i]+q)%10;if(c[i]+d[i]+q>=10){q=(c[i]+d[i]+q)/10;}elseq=0;}if(y[t]>0)t=t+1;for(i=t-1;i>=0;i--)printf("%d",y[i]);/**************************************/while(x[p-1]==0)//deal the 0 behind of xiaoshu{if(x[p-1]==0)p=p-1;}/**************************************/if(p>0)printf(".");for(i=0;i<p;i++)printf("%d",x[i]);printf("\n");}return 0;}
0 0
- 大明A+B hdu1753
- hdu1753----大明A+B
- hdu1753 大明A+B
- hdu1753大明A+B
- 大明A+B
- hdu1753 大明A+B
- hdu1753大明A+B
- HDU_1753大明A+B
- 大明A+B
- 大明A+B
- HDU 大明A+B
- 1573 大明A+B
- 大明A+B
- hdoj1753大明A+B
- 大明A+B
- 大明A+B
- 大明A+B
- hdu1753 大明A+B
- java.lang.OutOfMemoryError: GC overhead limit exceeded ECLIPSE解决方法
- org.hibernate.PropertyNotFoundException
- 在web项目中应用shiro
- 常见浏览器内核概述
- Android使用WindowManager在界面添加一个悬浮框
- 大明A+B
- Android基础动画
- windows下搭建Mantis 缺陷管理系统
- JAVA 希尔排序
- 求最大公约数(gcd)
- YUV格式学习:Y转换成RGB24
- 深度学习-LeCun、Bengio和Hinton的联合综述
- @import使用
- 获取当前时间前半个小时和后半个小时的SQL代码