#AAA1003. A+B Problem 交互版 2
A+B Problem 交互版 2
时间限制: 1.0 秒
空间限制: 512 MB
虽然但是,本题时空限制没什么用,且本题只支持 C++ 完成。DSA 辅助练习也只允许使用 C++ 提交。
题目描述
给定两个非负整数 和 ,输出他们的和。
交互方式
这是一道函数式交互题,不需要选手考虑输入输出,也不要从标准输入读入数据,或将任何内容输出到标准输出,否则会影响判题。
与交互版 1 不同的是,本题需要你实现主函数,你提交的代码需要包含头文件 plus.h
,并调用该头文件中实现好的给定接口。
void GetInt(int *x)
:获取一个整数,并且将整数的值写入参数的int *
地址。void Response(int x)
:通过该接口报告你得到的答案,为一个整数。
本题你需要实现的主函数流程为:先获取两个整数,计算它们的加和,并最终通过上述接口报告你得到的答案。
子任务
对于所有数据,保证 。
提示
这类函数式交互较为少见,主要在于主函数流程的描述较为繁琐。但是在 DSA 编程作业中同样出现过。
对于本题而言,我们一样可以在本地进行单文件的脱机调试,将上面的交互头去掉,自己手动实现 GetInt
和 Response
函数。
#include <stdio.h>
// 本地单文件调试先把这个去掉,最后再把它加上
// #include "plus.h"
// 手动实现 GetInt 和 Response 查看效果,提交时记得把两个函数注释掉
void GetInt(int *x) { scanf("%d", x); }
void Response(int x) { printf("%d\n", x); }
int main()
{
// todo:实现主函数
}
需要注意的是,实际评测使用的交互库不一定与之相同,因此只能在本地进行这种测试。
在 DSA 辅助练习当中,一部分题目会给你对应的示范交互库以及交互方式,但是也只是作为你实现代码的框架示范,实际评测会使用另一套交互库,避免被攻击,或被选手以不正当手段通过题目。