qq空间个人网站,网站美工培训,湖南平台网站建设哪里好,涿州网站网站建设题目#xff1a;
题的目标很简单#xff0c;就是求两个正整数A和B的和#xff0c;其中A和B都在区间[1,1000]。稍微有点麻烦的是#xff0c;输入并不保证是两个正整数。
输入格式#xff1a;
输入在一行给出A和B#xff0c;其间以空格分开。问题是A和B不一定是满足要求…题目
题的目标很简单就是求两个正整数A和B的和其中A和B都在区间[1,1000]。稍微有点麻烦的是输入并不保证是两个正整数。
输入格式
输入在一行给出A和B其间以空格分开。问题是A和B不一定是满足要求的正整数有时候可能是超出范围的数字、负数、带小数点的实数、甚至是一堆乱码。
注意我们把输入中出现的第1个空格认为是A和B的分隔。题目保证至少存在一个空格并且B不是一个空字符串。
输出格式
如果输入的确是两个正整数则按格式A B 和输出。如果某个输入不合要求则在相应位置输出?显然此时和也是?。
输入样例1
123 456
输出样例1
123 456 579
输入样例2
18
输出样例2
? 18 ?
输入样例3
-100 blabla bla…33
输出样例3
? ? ?
分析
这道题需要注意的是数据A、B的范围在【11000】这时候我们会控制在小于1000内忽略了值需小于1即不能为0.
AC代码
#includebits/stdc.h
using namespace std;
int n,k;
string s;
int x,y,flag,book;
int main(){getline(cin,s);int ls.size();xyflagbook0;for(int i0;il;i){if(s[i] ){ki;break;}if(s[i]0s[i]9)xx*10s[i]-0;elseflag1;}if(x1000||x1)flag1;for(int ik1;il;i){if(s[i]0s[i]9)yy*10s[i]-0;else {book1;break;}}if(y1000||y1)book1;flag0?coutx:cout?;cout ;book0?couty:cout?;if(!book!flag) cout xyendl;else cout ?endl;return 0;
}