每日一练 洛谷 A+B Problem
题目背景
不熟悉算法竞赛的选手请看这里:
算法竞赛中要求的输出格式中,不能有多余的内容,这也包括了“请输入整数 a 和 b” 这一类的提示用户输入信息的内容。若包含了这些内容,将会被认为是 Wrong Answer,即洛谷上的 WA。在对比代码输出和标准输出时,系统将忽略每一行结尾的空格,以及最后一行之后多余的换行符。
若因此类问题出现本机似乎输出了正确的结果,但是实际提交结果为错误的现象,请勿认为是洛谷评测机出了问题,而是你的代码中可能存在多余的输出信息。用户可以参考在题目末尾提供的代码。
此外,请善用应用中的在线 IDE 功能,以避免不同平台的评测产生差异。
题目描述
输入两个整数 a,b,输出它们的和(∣a∣,∣b∣≤109)。
注意
- Pascal 使用
integer会爆掉哦! - 有负数哦!
- C/C++ 的 main 函数必须是
int类型,而且 C 最后要return 0。这不仅对洛谷其他题目有效,而且也是 NOIP/CSP/NOI 比赛的要求!
好吧,同志们,我们就从这一题开始,向着大牛的路进发。
任何一个伟大的思想,都有一个微不足道的开始。
输入格式
两个以空格分开的整数。
输出格式
一个整数。
输入输出样例
输入
20 30
输出
50
题目分析
这道题要求输入两个整数并输出它们的和。虽然问题看似简单,但需要注意算法竞赛中的严格输出格式要求,避免多余内容导致错误。关键在于正确读取输入并确保结果正确。
方法思路
-
输入处理:使用
scanf读取两个整数,自动处理空格分隔。 -
计算与输出:直接计算两数之和,用
printf输出结果。 -
数据类型选择:题目保证输入绝对值不超过1e9,使用
int类型足够存储和计算。
解决代码
#include <stdio.h>
int main() {
int a, b;
scanf("%d %d", &a, &b);
printf("%d", a + b);
return 0;
}
代码解释
-
头文件引入:
#include <stdio.h>用于输入输出函数。 -
变量声明:
int a, b存储输入的两个整数。 -
输入读取:
scanf("%d %d", &a, &b)读取空格分隔的整数,自动跳过空白字符。 -
求和输出:
printf("%d", a + b)直接计算并输出和,无多余格式。 -
返回语句:
return 0符合C/C++规范,确保程序正常退出。
注意事项
-
避免多余输出:不可添加任何提示性文字(如
printf("请输入两个整数"))。 -
数据类型范围:
int在32位系统中足以处理题目给定的数值范围(两数之和最大为2e9,小于int最大值2,147,483,647)。 -
输入灵活性:
scanf自动处理多空格或换行分隔的输入,确保鲁棒性。
更多推荐



所有评论(0)