编程应该纳入高考吗?

[复制链接]
查看4484 | 回复0 | 2022-2-7 05:15:37 | 显示全部楼层 |阅读模式
2046年的春天,编程全面纳入高考的第四年, 河北某三线城市,星期五下午5点半
9 i' u" I* @& H$ d4 m( D1 y王子明同学拿着手机,一脸沮丧的走在街上,时不时的有电动汽车和外卖机器人在他身边驶过,偶尔天空中划过几架直升机。“都是有钱人,跟我不是一个世界的”。王子明想着,他经过一家充电站,来到杂货店,里面的美女机器人微笑着递给他一瓶可口可乐,还有一块口香糖,他拿起手机在美女的胸前一比划,“总价30元,谢谢光临,欢迎您下次再来。”机器人微笑着走了。“也就喝快乐水能让我稍微快乐一点。“7 a9 y& J; n4 v1 s$ o
王子明为什么不高兴呢,因为一模成绩出来了,他的成绩非常不理想,其他科目还好,但是信息技术考砸了,150分的题目只拿到了85分,连及格线都没过。9 P: }  z' G" q8 P! U  v/ `
“高考为什么要考计算机,为什么要考编程,我真羡慕我爸,他们高考根本不考算法!我真想回到10年代,那个时候我早就能上双一流了。“王子明恨恨的说。% D' W" M0 O* s8 {" F
王子明的确不擅长编程,Dijkstra,KMP怎么背都背不过,BFS和DFS经常写错边界条件,至于动态规划压轴题,他就从来就没做出来过。他也就只能靠前面那60分选择题拿点分,选择题考的都是计算机基础知识和基本操作,不涉及编程。, Q0 b! c1 [2 j  }0 M6 ?4 [; x
“现在是高度信息化社会,计算机普及率99%,不会编程的人就是文盲!“ 他脑海里又浮现出计算机老师在课堂上的话。计算机老师是一个又高又瘦的中年妇女,非常严厉,他很怕她,每次走廊里见到她都绕着走。
0 ?% M1 F7 d3 J( d4 s王子明回到家里,只见家门口站着一个快递机器人,正在给妈妈搬东西,“子明快点,快帮我把这些菜放在冰箱里,肉放冷冻,菜放冷藏。”子明连忙过去帮忙。帮完忙,妈妈问道:“这次一模成绩怎么样,多少名啊?”王子明有点支支吾吾,不愿意说。“20名?”妈妈脸色沉了下来,王子明摇了摇头,“30名?”妈妈脸色更难看了。王子明断断续续说道:“4....2名”
+ w1 W% C/ O$ M1 a* \' x( i' B# I"什么?!42名,你之前不都一直是前20的吗,这次怎么回事?"
# `- L# s' q7 t“我计算机没考好,只有85分。”
& m8 U( U0 b8 g2 Z“呵呵!天天都在家里打游戏,我就从来都没看你主动的刷过leetcode !  你看隔壁那小崔,不仅刷leetcode,每天晚上还要打codeforces,打完还要补题,人家说了,我不把所有题目AC,就不睡觉。 你呢,我就从来没见你说过这个话。”4 h- P% r! U  I* O  @
“我刷leetcode,昨天刷了8道呢。”' e; I4 T9 l& U' ~) |! ~1 A
“别骗我了,你把别人的题解复制粘贴也叫刷题?骗谁呢,自己骗自己有意思吗?高考能让你看别人的题解?你要是真的刷了,好,你现在就给我打开你昨天刷的题,当着我的面给我AC。AC不了,你就别吃饭!“. U' D, G: g: j; m
“妈妈我错了!“王子明快要哭出来了。6 E, t1 P1 F% {0 o9 `9 d7 d
妈妈看到王子明这个样子,也有点心软,说道:“孩子,不是我逼你,我也希望你能高高兴兴的去玩耍,你现在还有三个月就要高考了,我们家没钱,你爸爸天天在公司加班拼死拼活一年连100万都挣不了,我们也不能让你去国外读书。你现在这个样子,怎么考好大学?考不上好大学,你就找不到好工作,找不到好工作,就没有女孩子愿意嫁给你。现在中国每3个男人就得有一个在打光棍,=你愿意做那三分之一吗?“1 X+ T9 d5 f' i4 x, p% I
“妈妈这些我都知道,但是编程太痛苦了,我讨厌算法,什么dijkstra,什么二分图,什么KMP,现实生活又用不到!“9 C' Q: W6 m: Q. @
“妈妈也知道你不喜欢,但是高考它就考啊,妈妈上学的时候也很讨厌数学,也要学一些根本用不到的圆锥曲线方程,三角函数什么的,你咬咬牙,背过它们,高考完就让它们滚一边去不就得了?“. p# t  a2 X1 ?8 ?% d" r
“妈妈我......“/ T* \  \, {- ?. N" g5 S: A% i
"别说了,要不我给你报个辅导班吧,计算机突击辅导班,周日下午两点去上课。"
* R# A' N( M) |1 X* B  `“周日我要和小洋去踢球。“( g3 I% c4 ^# r- k. b! Y
“踢什么球!现在是踢球的时候吗?高考完了你踢到天黑我也不管,现在不行!“
7 O; @# u# a' g1 y+ I饭后,子明闷闷不乐的回到屋里,打开leetcode,开始完成今天老师布置的题目。
; n+ r; z( N9 e8 |: X+ c; p" |  j说起leetcode,据王子明认识的一个程序员爷爷说,这leetcode在他们年轻的时候就有了,当时的目的是总结一些程序员算法面试的题目。后来因为各大公司都在面试算法,leetcode越做越大,再后来,听闻中国高考要考算法,leetcode立刻推出了中国高考专用版,把总部迁到了北京,迅速统治了中国计算机教育市场,甚至还高价收购了《五年高考,三年模拟》,进军其他学科。目前是全国的中学生都在刷leetcode,老师们也在上面布置作业。5 d  A. _" B4 [5 J8 W* I
另外,每周的周赛也是全国乃至全球的一场盛会,几十万名用户在上面比赛,小明他们学校有个学长因为某次周赛拿了全球第7,被大家称为“七神”,全校闻名。( x( O( v8 T( Y* ?# L1 N$ w
......
: B: ]4 ^* Z1 b子明还在刷题,Wrong answer,Wrong answer,数不清的Wrong answer.......好不容易解决了这个wrong answer,又在下一个test case挂了,好不容易把这几个出错的case都解决,结果又变成了Time limit exceeded。“为什么就不能出现Accepted这个词?很难吗?”子明怒吼道。 % t" w- a! j8 B- f2 x
当子明东拼西凑把最后一道题AC,已经凌晨三点了,他发现桌子旁边有一杯奶,不知道是什么时候妈妈给送过来的。奶旁边还有一张面膜和一个字条,字条写着:“喝完奶早点睡觉,不管你考多少名,你都是妈妈最爱的子明。”( f, t5 q1 z6 ^" z
子明躺在床上睡的很香,梦里他变成了一个天才,所有的算法题,只要他随便写点,交上去就通过。不知不觉就到了上午10点,他猛的一下子起来:“糟了,今天还要去补课呢,都迟到两个小时了。”这时候妈妈进来:“孩子不用补了,妈妈已经替你请假了。你昨晚睡的太晚,要好好休息一下。“/ N( P+ x1 }, T3 n5 x( }
“谢谢妈妈!“子明松了一口气。, K' b" q" I, y2 E
“你现在就是要全心全力把算法搞好,其他科目都可以放放,我昨天刚给你报了那个计算机辅导班,最后一个名额呢,被我抢到了。辅导班的杨老师非常厉害,而且很擅长一对一辅导。“
- M, W, q9 t& X9 x# E“哦!“
1 _1 c7 c( n$ P! m7 o2 m9 f3 O“那个辅导班的老师要求你这几天打一场编程比赛,然后把你的比赛记录以及代码发给他,他帮你分析一下。一会10点半是leetcode周赛,你吃完早饭去打一下。能进前1万名我请你吃火锅。“
7 ]$ b1 Q' ?5 W) K6 ^1 }% F* T“好的!“
) i1 ?6 J, G1 M" f1 F6 _# _然而子明并没有进前1万,甚至连前10万都没进,他只做出了一道easy难度的签到题。望着满眼的红色wrong answer,他非常沮丧。有一道BFS的题明明会做,但就是不对,也不知道错在哪里。毕竟,为了提升自己比赛成绩的含金量,防止有人hard code,leetcode平台这几年在比赛的时候不再告诉选手具体哪个test case错了,只会告诉错误类型。
  x2 I1 m" z& A妈妈看在眼里,也没说什么,去卧室给那个辅导老师打电话,“我们家子明可能让您费心了,他在编程方面完全不开窍。”他听到妈妈的声音,电话那边则是 “没问题没问题,这样的学生我见多了,你家孩子算不错的了,起码还做出来一道,没有我教不好的学生。”+ i1 A5 `9 H2 S: Q  ^' r/ r& i, U; t0 ^
周日的下午,他跟妈妈去了辅导班,进了教室,辅导老师正在给大家演示匈牙利算法的实现过程。“我们现在是月老,撮合的越多越好......"  子明听着听着,发现这个老师真的不一般,匈牙利算法讲的栩栩如生,要知道他学校的老师只会念ppt,而且ppt做的还不咋地,但这个老师讲完,他听懂了,而且有种想找一道题练练手的冲动。
  o. y* j7 {% d. f: ^6 h6 p. z“妈妈这个老师讲的真好!”妈妈说道:“那是必须的,这个老师可是知名教练,大学时候是ICPC全国金牌,我们小区那个全市冠军吴刚就是他教出来的。衡水中学开了1200万年薪挖他,他不去。要不是妈妈凌晨一点守在电脑前抢课,根本抢不到呢。”
3 X6 G, L( M$ ^下课他和妈妈来办公室找到老师,发现老师已经拿着一堆纸在等着他。子明一看,是他参加比赛提交的所有代码,老师已经打印出来了,上面有不少勾圈,显然是认真读过。老师第一句话就是:“这个比赛题目做不出来没关系,赛后分析才是关键。我看了你比赛的代码,比我想象的要好,你如果注意一下细节,这次比赛你就不是一题,而是三题了。”; k0 ~9 i; V. p+ A. S. J
这句话让子明不敢相信:“三题,要是三题的话我就是前1万名了。“2 Q: _* C8 o3 k. D0 T9 }2 x+ i( w
"你还记得你第二题死活都做不对,一直都是wrong answer吗?") s$ \' y3 {& h9 j! S3 ]/ C# ^+ y
“是的“0 k" T* s' W# K2 Z6 X
“你把第37行i和j两个变量调过来试试看。“5 r8 d  |0 B: z- r! p6 v3 A
子明拿出自己的电脑,一调换,提交,发现直接变成漂亮的Accepted了。+ o* R' O) N2 V9 n
“哈哈,看来这道题我还是会做的,这就是低级错误“0 Y5 L- \) g9 f0 B' a! }8 \
老师一脸严肃:“住嘴,什么低级错误,低级错误也是错误!高考犯低级错误,照样没有分数。”
7 M& d  y7 M# s1 L子明沉默了,老师继续说道:“你的代码命名非常不规范,i,j,k横行,而且整体局部不分,前面刚给一个全局变量赋值为 i,后面又把 i 赋值给另一个局部变量。这样的话很容易出错。“
2 a/ v$ A. Y% V1 v( u3 C$ @4 C% T“可是老师,我每一行都仔细检查的,出错的概率很低的。“
2 [4 \  [9 d9 ?! u9 Q“那好,假设你每行出错的概率是1%,很低了吗,那30行出错的概率是多少?“
9 n" f6 r3 T8 h/ l' p5 y+ A" F“26%。“子明拿出手机快速计算了一下。
! A! J) q: n% R8 l/ u- X# s( I5 y“对啊,你每个程序写30行,就有26%的概率出错,100分就变成74分了。你高考丢26分,足以让你跟重点大学失之交臂。马虎是不可避免的,你如果能把出错率降到0.1%,那一道题出错的概率就是3%,你就能提高23分,如果你能把你的代码写规范,那足以降到0.1%。注意,所有的马虎都是有因可循,一定要找深层原因,而不是把它仅仅归结于马虎!“
2 z$ T5 a1 `2 T, b, H2 p! k( b子明默不作声,这些他老师从来都没跟他说过,老师只会说:“马虎啊,那下次注意不要马虎不就行了吗?”但他还是会马虎) a8 |+ K; W, J( j  M
“代码规范真的很重要,你知道衡水中学的学生怎么练的吗?他们全校写代码用的都是一个规范,学校自己搞了一个做题系统,学生们在这个系统上做题的时候,如果代码不符合规范,会被直接判错,就算是写对了也没用,因此所有学生写的代码都一个样子。当然我不能要求你这样,但是你一定要留心。“! @& W  Q1 q; Y7 o* r
杨老师喝了一口水,又看了一下子明的代码,继续说道:4 F2 j* ^1 \  `; s8 g' j& C
“然后第三题,我看你已经判断出这道题需要用dijkstra算法了,但是你为什么只写了一个def dijkstra然后就没了?“
6 \4 O& J  L+ q“我忘了怎么写了。“
" ?5 q" V! `5 p3 |$ h“这个方法其实不难记的,就是建造一个堆,然后每次把权重最小的边抽出来更新,我有一个专门讲这个方法的视频,你把接收器给我,我传给你,你回去好好看看,里面有专门的口诀。“
0 {2 Q! Q8 A6 h+ q“好的,谢谢老师!“# s: ~/ a8 E) C% ]0 u* _- u
“你这两道题都是经过努力可以做出来的,只要做出来,你的成绩就会有飞跃。这些是我一些辅导材料,你回去好好研究一下,以后每周要来定时上课哦。“
& @0 e: \0 }5 u8 N- y5 k0 g' X子明说完,他妈妈马上跟老师说:“杨老师你看,能不能给我孩子单独开个小灶啊。”“可以,不过这个是另收钱的,每小时5000。““没问题,这个老师您看您什么时候有时间啊。”“这是我的日程表,子明你来看一下,从这个白色区域选两个小时”.......: i8 G5 C, D) d* g; I( I# g
回家的路上,子明埋怨妈妈:“妈你这是干什么啊,花这么多钱,两个小时都顶我一个月生活费了,咱家又没那么多钱。”“再穷也不能穷教育啊,你考上好大学,能给我省好几千万呢,再说你打网游充的钱也有好几万了,你少充点不就补回来了?”. r2 G; u) W1 r- ~% `
子明不说话,回去之后开始拿出老师给的资料慢慢看,妈妈则在厨房忙活,给儿子做他最爱吃的红烧牛肉。爸爸每天在公司加班,平时就很晚回家,最近为了不影响儿子备战高考,干脆就住在公司了。“儿子,考上双一流,爸爸带你去你最想去的环球影城。”爸爸和儿子视频聊天,“爸爸,我们班明明她爸爸要带她去月球呢。”“去月球要20亿呢,我一辈子也挣不到这个数啊。”“爸爸我开玩笑呢,明明她爸爸是大公司老总,咱家能跟她家比嘛。”“哈哈哈哈,吓死爸爸了!等你有了出息,还想让你带我去呢。”......
! i( I' {8 e  W9 V) ~) s( [* a过了一周,子明准时出现在杨老师家里。杨老师很热情招待了他,然后对他进行了辅导。+ C& E2 T: L& c4 s4 r
“这个信息技术高考在我上学的时候并没有,是10年前刚刚加上的。一开始满分是100,而且只在部分发达省份考,后来因为人口老龄化加剧,青年信息人才越来越紧缺,2043年开始上升到了150分,并推广到了全国,统一上机考试,时间两个半小时。
! a0 _0 ~8 H2 _1 K+ ]& s4 H, J首先是60分的选择题,这个考的就是计算机基础知识,什么windows操作啊,什么进制转换呢,我相信你应该没什么问题,这些题目一定要快,必须1分钟就要一道,30分钟内解决战斗。
$ R0 {. c. B9 e6 X然后就是6道编程题了,每道15分。
  d; J* Z& T- q1 U4 k) u9 u但是高考和比赛的区别是,高考在中间不会告诉你做的对不对,只有考试结束之后才会判分,所以你120分钟做完,和150分钟做完,结果是一样的。这就要求你必须非常仔细,一遍就要做对。不要指望着让OJ帮你调BUG。不过呢,就算你写的不对也没关系,test case和test case之间是相互独立的,你通过了这个test case就给这个分,全通过了就是满分。
2 x* L, p/ y/ A4 E0 P$ k; T7 ]另外,高考是不限语言的,但是所有语言的time limit都一样,你用python当然OK,因为运算时间很充裕,复杂度只要正确就行,但是呢,如果你用C++可能会有额外的好处,衡水中学在入学时就强制所有学生都用C++。我记得2044年上海的题目,出题者本来是想要大家用O(n log n)算法的,但是限时给的太长了,如果你用C++再加上一些优化,O(n^2)也能拿满分,最后好多人暴力过了。判卷组本来想缩短时限重判的,结果因为大家已经知道自己成绩,社会反对声浪太大,只好作罢,你看,用c++白捡了10分,还省了大量时间。所以如果你现在上高二,我会建议你改C++,但是你是高三,所以你可以选择不改。
$ m& @# s3 P+ w- v6 R& M前两道题,就是一些数组,字符串的题目,考察最基本的前缀,后缀,二分,双指针,哈希表之类的,这些题目,是送分题,一分都不能丢的,而且要10分钟一道。
# `. d" `( ~( Z中间两道题,一般是二维数组或者图之类的,需要用到各种搜索,BFS,DFS,或者一些图论基础知识,比如union find,dijkstra之类的,这些题目,如果你想要上双一流,也是必须要拿下的,要做到20分钟一道。8 B( i: ]! s$ t2 `/ O
最后两道题要花一个小时完成,第五题容易出奇葩的题目,或者是几个知识点综合起来的综合题,或者需要用到线段树进行优化,甚至可能会出几何和数论。而第六题,就是臭名昭著的动态规划了。这两道题,以你目前的水平,是拿不下的,但是你可以从里面抢分,千万不要空着。注意,你哪怕用最暴力的方法,也能拿到大约1/3的分数,前面如果再不扣分。你就有130了,足够你上双一流的。不过你要是想上清北华五,那就要至少140分,也就是选择题全对,然后最多有一道题只会做small test case,剩下的都要满分。! a% L, c% e& Y' `# j6 F* }! q" H
而且,动态规划,千万不要畏惧,虽然千变万化,其实也可以分成几大类的,背包问题,树形DP,博弈论.....你现在水平不高,你只要记住,动态规划,就是记忆化的递归,你只要往这方面想,绝大部分题目你都是可以解决的,至少可以拿到大部分分数。
" \/ ^; [- I8 O8 I# @4 q虽然题型分布一般是这样,但是高考也有不按套路出牌的时候,比如去年最后一题是贪心+最小堆,而动态规划放到了第三题的位置,难倒了一大片,还有我记得前年某个省,最后一题是概率题,需要用到排列组合,而排列组合需要存储中间结果,取模需要用到数论知识,否则大数据会超时...... 虽然中国剩余定理还有欧拉定理什么的是超纲的,会在考试的时候给你写出来,但是掌握了没亏吃,毕竟时间是最宝贵的.....! `) k+ x- U3 e- R
最后想说,学习算法,最关键的还是多练习,尤其是练习自己的薄弱环节,刷自己的强项题固然很爽,但是没什么效果。衡水中学的学生,三年下来要做好几千道题,他们每周要搞两次编程比赛,全校大排名,每个班的最高名次和平均名次都会算到教师绩效里。而且,他们搞出来的那个系统,不仅强制学生把代码写规范,还能通过每个学生的答题情况来分析他们的弱点,专门给每个学生出他们大概率做错的题目,比如一个学生binary search已经炉火纯青,但是DFS经常写错,那么系统就会大概率给他出DFS相关题目,很少出binary search。要不说那边学生平时用那个系统做题非常痛苦,但最后高考成绩都很高呢!
$ T7 }+ o9 A5 w: i
# X, E4 @1 h2 e; t# `虽然这些他们老师在课上也说过,但是子明还是听的津津有味,后来老师又给他辅导了几道错题,扩展了很多知识点,两个小时很快过去了,老师把把子明送走,说:“现在努力绝对来得及,千万不要对自己失去信心!只要听我的,把我给你布置的题目刷透,你高考上130没问题。”# G+ g: v0 E8 w3 Q# n. d: _
在回家的路上,子明充满了斗志,说道:“不就是区区算法嘛,有什么好怕的,来啊高考!看我6月把你打的落花流水!”
# ~7 I% ?9 W- S- Q' c" t这个时候子明的手机响了,是他的朋友小洋:“小明啊,下周日上午我们一起踢球怎么样,咱们初中同学长庚也加入呢。”, ]# Q) s3 _" d5 R
子明又有点心痒痒了,想偷偷去,不告诉妈妈,后来觉得有点不好,就在电话里跟妈妈说了,没想到妈妈爽快答应了“你既然跟我说了,说明你现在还是知道分寸的,踢球没什么不好,可以放松你的大脑,你这次可以去,但是你要用一次周赛前1万名的成绩来回报我。”“好!”子明高兴的说道。
+ r$ U9 t4 _4 e) p夕阳下,一个少年坚定地前行着。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

210

金钱

0

收听

0

听众
性别

新手上路

金钱
210 元