加载中...
加载中...
-
卧槽,刚点进来我还以为是什么隐藏坑题,题目写了个“信息学奥赛一本通C++语言”,这名字听着多唬人啊,结果你告诉我就是x个小朋友每人10块钱让我算总价???我差点把嘴里的水喷屏幕上了。就这么个玩意儿也能单独发篇文章?真服了。 我当年学编程的时候用的也是这本破书,红色封面,像块砖头一样。上面例题一个比一个离谱。什么“交换两个数”“将十位数与个位数互换”“求三个数的最大值”……我当时初二,暑假被我妈塞到机房兴趣班,老师逼着我们把这本通从第一题开始刷。刷到这一题的时候我旁边的人都快睡过去了。全班二十多个学生,只有一个刚上小学的没摸过电脑的在那儿挠头,其他人都已经无聊到在桌子底下玩手机了。你想想这题有多水。 好,题目说“已知一位小朋友的电影票是10元”,先不说这句中文翻译得跟用机翻似的——“一位”和“x位”这能搁一块儿用吗?正常不是应该说“每张票10元”或者“一名小朋友的票10元”?还“已知”,已知你个头啊,你这不就是最简单的乘法应用题吗?最搞笑的是最后输出样例是“2 20”,中间空个格。我寻思这空格到底有什么技术含量?谁还不会用cout输出个空格么?你要是不会,也不用学编程了真的。 不过话说回来,我仔细想了想,这种题出现在第一章开头其实也谈不上十恶不赦。毕竟刚学cin和cout的时候,有些新手真的会犯低级错误,比如输出“答案是20”,然后评测系统直接给你个大大的WA。我当年见过一哥们儿写这题,他非要在输出之前先打印一行“请输入一个整数:”,结果提交了三次都不过,他还没反应过来是系统不让输出提示语。后来老师指出来,他还嘟囔“凭什么不能友善一点”,哈哈。所以从“教会你什么叫严格匹配输出”这个角度看,这题勉强算是个敲门砖,让你知道做题不是写Word文档,系统不懂你那些花里胡哨的客套话。 可问题是,文章内容就是个题目描述啊,代码呢?思路呢?你哪怕写个“用cin读入,然后直接输出x和x*10”我也算你讲了,结果你从头到尾就是把题目给抄了一遍,样例输入输出复制一下,完事儿。这不叫文章,这叫占位符。我怀疑是网站或者公众号为了凑栏目搞出来的水货。你看标题还带个编号“2062:【例1.3】电影票”,我开始以为2062是个什么年号还是章节号,后来才明白这可能是书里的题号?例1.3?就这?第一章第三题,估计第一章全是在教怎么用编译器的。 再聊聊这个价格。10元一张电影票……卧槽这也太便宜了吧。现在他妈的随便一个三四线小县城看电影都得三十五起步,稍微好点的IMAX一百块,10元怕是只能看那种快下映的公益场,还是儿童半价的半价。题目要是更新一下,改成“已知一位小朋友的电影票是50元,打车得花20元,爆米花套餐30元,问x位小朋友总费用”那还有点算头,顺便还能考你括号优先级。不过话又说回来,数学题嘛,价格只是个符号,10也好50也好,逻辑没变,只不过数据这么老,说明这本书从编写到现在怕是二十年没改过版,编辑连通货膨胀都不管,属实离谱。 还有最让人无语的一点,就是这道题根本没说x的范围。你要是在评测数据里放个1000000000,int直接就炸了,得用long long,但很多新手根本不知道什么叫溢出。我当年刷题的时候就被这种题阴过一次。那题比这个稍微难一点点,也是乘法,系数好像是几千,算一个很大的结果,我用的int,提交之后样例能过,成绩出来全部WA。我盯着代码看了半小时都没想明白,最后查了半天才懂int只能存到大约21亿,草。你说一本通要是能每个题都写明数据范围,我就给它烧柱香。可惜这种垃圾书从来不说,就让初学者自己踩坑,踩完也不知道为什么,只觉得编程好难。 不过说句公道话,这类题目确实也没什么可以“讲解”的。正常人三分钟写完,你指望写文章的人给你拆出什么花来?总不能像有的营销号那样,把“定义变量”写成“我们首先定义一个存储整数的暂时居住空间”,然后“赋值”写成“将数据对象从一个容器移动到另一个容器”……那更傻逼。所以要骂也得骂出版商,没事搞这种没有含量的题目来占页码。要是有人真在搜“信息学奥赛一本通2062答案”,直接给他代码就完事儿了呗: #include using namespace std; int main(){int x;cin>>x;cout
加载中...
加载中...

