HDU 1002 之常见WA(C++描述)
来源:互联网 发布:p2p软件 编辑:程序博客网 时间:2024/05/02 04:10
HDU 1002 其实挺水的一题。不过我是个菜鸟,所以应该是典型的错误都犯了些,记录下来。
1.开始我忽略了每个pair数之间多余的空格
2.这个题是个大数相加的题。给出的数超过1000位,肯定无法用普通的INT在承载,只能用数组存储然后自己模拟加法的进位
3.开始在本地测试挺成功,但是给我同学一看发现我忽略了一些简单的情况。如1+99 11111111111+3等这样的情形
小问题还发生了很多,我在OJ上提交了N次,,,AC率变成了5%一下。。。汗。。
总结了一下,一般换行有问题会提示Presentation Error所以如果出现了WA,首先检查一下自己的代码把,其次看看输入输出格式。这基本上就没问题了
贴出我的程序,,,,费了劲了!
#include<stdio.h>#include<string.h>#include <iostream>using namespace std;char *add(char *a,char *b);void print(char *a);int main(void){int n;char num1[1502];char num2[1502];cin>>n;for(int i=0;i<n;i++){cin>>num1>>num2;cout<<"Case "<<i+1<<":"<<endl;cout<<num1<<" + "<<num2<<" = ";print(add(num1,num2));cout<<endl;if(i+1!=n)cout<<endl;}}void print(char *a){int i=0;while(a[i]!='\0'||a[i]=='\0'&&i==0){if(a[i]=='\0'){i++;continue;}else{cout<<a[i];i++;}}}char *add(char *a,char *b){int lena =strlen(a);int lenb =strlen(b);int c=0;int maxlen = (lena<lenb)?lenb:lena;char* sum=(char*)malloc(maxlen+2);sum[maxlen+1]='\0';memset(sum,'\0',sizeof(sum));while((lena-1)>=0&&(lenb-1)>=0){int sum1 = a[lena-1]-'0';int sum2 = b[lenb-1]-'0';int sum3 = sum1+sum2+c;if(sum3>=10){sum3=sum3-10;c=1;}elsec=0;sum[maxlen]=sum3+'0';lena--;lenb--;maxlen--;}while(lena-1>=0){if(lena-1>=0){int tempa = a[lena-1]-'0';tempa = tempa+c;if (tempa>=10){c=1;tempa=tempa-10;}elsec=0;sum[maxlen]=tempa+'0';lena--;maxlen--;}}while(lenb-1>=0){if(lenb-1>=0){int tempb = b[lenb-1]-'0';tempb = tempb+c;if (tempb>=10){c=1;tempb=tempb-10;}elsec=0;sum[maxlen]=tempb+'0';lenb--;maxlen--;}}if(c==1){sum[0]=1+'0';}return sum;}最后提示一下如果想用Java的话,用BigInteger有奇效
0 0
- HDU 1002 之常见WA(C++描述)
- hdu 2604(WA)
- HDU 5192 [迷之WA!]
- 一个G++AC,C++WA的例子(hdu 4107)
- HDU 2048 数塔(WA)
- hdu 1257 WA
- HDU 2145wa
- hdu 1690 Bus System (Floyd,spfa 没一直wa)
- WA恶之源
- HDU 1224 莫名其妙的WA
- WA卡关之uva202(解决问题后已AC)
- 数据结构之线性表(C++) -- 链式描述
- Q2007(WA->AC)
- wa
- WA~~~~~~~
- WA
- wa
- WA
- 存储数据键和项目对的类(Dictionary对象
- 使用Lucene的Highlighter实现文件摘要的自动提取
- Mysql安装时出现APPLY security settings错误(一般第一次安装时不会出现这样的错误,而在重新安装时,很容易发生)
- 利用内容观察者操作系统的联系人(查询,添加)
- 你应当如何学习C++(以及编程)(rev#1)
- HDU 1002 之常见WA(C++描述)
- ALSA声卡驱动中的DAPM详解之一:kcontrol
- jQuery中attr和prop方法的区别
- Part3 使用JavaScript显示地图
- Hibernate 异常: Illegal attempt to associate a collection with two open sessions
- hdu 1019
- libgdx 进度条
- ALSA声卡驱动中的DAPM详解之三:如何定义各种widget
- 初识设计模式