online_judge_1016
来源:互联网 发布:农村淘宝服务站利润表 编辑:程序博客网 时间:2024/05/16 05:48
#include <iostream>#include <string>using namespace std;const int N = 26;int prime[N];bool mark[121];void getPrime(){ int i,j; for(i=1; i<121; ++i) mark[i] = false; for(i=2; i<=11; ++i) { for(j=2*i; j<=121; j+=i) { mark[j] = true; } } j=0; for(i=2; i<121; ++i) { if(mark[i] == false) prime[j++] = i; if(j == N) break; }}int main(){ string sa,sb; int a[N],b[N],c[N]; int i,j,k1,k2; int tt,t; int lena,lenb; int value; getPrime(); while(cin>>sa>>sb) { if(sa == "0" && sb == "0") break; for(i=0; i<N; ++i) a[i] = b[i] = c[i] = 0; lena = sa.size(); lenb = sb.size(); k1 = 0; for(i=0; i<lena; ++i) { if(sa[i] == ',') { k1++; continue; } t = sa[i] - '0'; a[k1] = a[k1]*10 + t; } k2 = 0; for(i=0; i<lenb; ++i) { if(sb[i] == ',') { k2++; continue; } t = sb[i] - '0'; b[k2] = b[k2]*10 + t; } t = 0; tt = 0; value = 0; //i>=0&&j>=0这个&&十分重要,之前就是因为用的逗号,导致出错都不知道怎么回事 for(i=k1,j=k2; i>=0&&j>=0; --i,--j) { c[tt++] = (a[i]+b[j]+value)%prime[t]; value = (a[i]+b[j]+value)/prime[t]; ++t; } while(j>=0) { c[tt++] = (b[j]+value)%prime[t]; value = (b[j]+value)/prime[t]; ++t; --j; } while(i>=0) { c[tt++] = (a[i]+value)%prime[t]; value = (a[i]+value)/prime[t]; ++t; --i; } if(value > 0) c[tt++] = value; for(i=tt-1; i>=0; --i) { if(i == tt-1) cout<<c[i]; else cout<<","<<c[i]; } cout<<endl; } return 0;}
再次想起一句话,,细节决定成败。因为小语法点的疏忽,导致我耗费了将近一个小时!
0 0
- online_judge_1016
- AOE网上的关键路径【OJ--2498】【SPFA】
- Caused by: java.lang.IllegalStateException: getOutputStream() has already been called for this respo
- Github的项目文件上传
- 【NOIP2011TG】【OJ4366】【codevs1135】选择客栈
- POJ 1528 Perfection
- online_judge_1016
- Eclipse搭建SSH(Struts2+Spring3+Hibernate3)框架项目教程及增删改查经验总结
- 1003.我要通过
- youzhu知识点2
- SDUT 数据结构 欧拉回路
- java实现DES加密和解密
- 狭义相对论
- C# 读写Word
- 监督学习和无,监督学习区别