HDU 1000 A + B Problem
来源:互联网 发布:win10电脑优化 编辑:程序博客网 时间:2024/04/28 05:04
作为经典的ACM入门题,这应该是很多人入坑时做的第一道题,可以说,A+B问题对ACMer的意义相当于Hello World对于程序员的意义。很多题目很简单,但是有些人知道做法也不一定能AC,因此借这道题讲讲初学者可能遇到的种种问题。让我们先来看题。
1 1
2
难度:1星
题目很简单,相信你可以轻易读懂。话不多说,先上代码:
#include <iostream>using namespace std;int main(){ int a=0,b=0; while(cin>>a>>b) { cout<<a+b<<endl; } return 0;}
有一点你要注意,输入并不只有一组,因此在这里需要使用一个while循环。当有输入的时候,就输出对应的结果并换行,直到输入结束。所以输出结果后不要忘记换行,否则也是不能AC的。
另外,在使用cin和cout进行输入输出时,必须要引入iostream头文件和使用标准命名空间。
若是使用C语言的scanf和printf进行输入输出,引入cstdio头文件即可,代码如下:
#include <cstdio>int main(){ int a=0,b=0; while(~scanf("%d%d",&a,&b)) { printf("%d\n",a+b); } return 0;}
在使用scanf进行输入的时候,变量前记得加上&符号,不然会出错。另外,代码中的
while(~scanf("%d%d",&a,&b))
表示是输入多组数据,直到输入结束为止,其功能相当于:
while(scanf("%d%d",&a,&b)!=EOF)
因此如下代码也是可以的:
#include <cstdio>int main(){ int a=0,b=0; while(scanf("%d%d",&a,&b)!=EOF) { printf("%d\n",a+b); } return 0;}
这里特别说一点,很多初学者会认为要等输入结束才可以开始输出,其实不然。在Online Judge系统里,只要最终所有的输出部分拼起来后跟他的样例输出相同,那么代码就是正确的。至于你的结果是一次性输出的,还是断断续续输出的,是无关紧要的。所以,遇到一次性输出很困难的情况,完全可以输入部分就开始输出,然后再输入部分再输出。
另外,所谓的样例并不只有展示出来的sample input和sample output的那几条,事实上后台还存有很多隐藏的样例,用来检测你的代码是否存在漏洞,所以在提交代码前,你应该确认你已经考虑到所有的情况了。
- hdu 1000 A + B Problem
- [HDU]1000(A+B Problem)
- HDU 1000 A + B Problem
- HDU--1000--A + B Problem
- hdu - 1000 - A + B Problem
- HDU 1000 A + B Problem
- HDU 1000 A + B Problem
- HDU-#1000 A + B Problem
- HDU 1000 A + B Problem
- hdu 1000 A + B Problem
- [hdu-1000] A + B Problem
- HDU 1000 A+B Problem
- HDU 1000 A + B Problem
- hdu 1000 A + B Problem
- A + B Problem,hdu-1000
- hdu 1000 A + B Problem
- hdu 1000 A+B problem
- HDU 1000 A + B Problem
- 玩转Android之数据库框架ActiveAndroid的使用
- Debian
- 关于这个博客
- 反射中常用的几个函数
- 【DirectX11】第四篇 Effects框架
- HDU 1000 A + B Problem
- Java Web实用小知识02
- ny 108 士兵杀敌(一)-- 水(大家都是这么说的)利用线段树果断超时。。。
- sql语句的group by与having子句
- 杨辉三角
- reactjs、webpack、babel、eslint
- 修改hosts访问谷歌方法
- 第三方应用使用总结
- 子串查找问题