如果要问华人家长推娃从什么开始?可能第一首选莫过于——数学了。从美国华人家长受欢迎的竞赛来说,AMC体系位列榜首。然而家长们是否知道,仅AMC 8 和10,全美每年就有近16万学生参加!
更不用说,爬梯路径从:AMC8 到 AMC10/12,再到AIME,得分最高的邀请至参加 USAMO 或USAJMO,最终获胜的进行数学奥林匹克训练,再选拔出 6 名学生组成美国国家队,参加国际数学奥林匹克竞赛(International Mathematical Olympiad,IMO)。简直是十万里挑1!
不过,已经有一个万里挑1的机会出现了,你是否了解过呢?那就是——USACO ,美国信息学奥林匹克竞赛(USA Computing Olympiad)。
或者,更通俗些说,编程竞赛。作为从12月至次年4月举行四次比赛的美国信息学奥林匹克竞赛,同样有着一定的晋(pa)级(ti)渠道,包括:USACO Bronze(铜)、Silver(银)、Gold (金)、Platinum (白金/铂金)、US Camp(集训队)、选出4名代表队,出征最后的国际信息学奥林匹克竞赛 IOI(Internatoinal Olympiad in Informatics)。
像搜狗CEO王小川,他就是在1996年就代表中国参加第8届国际信息学奥林匹克竞赛(IOI),在56个国家和地区222名选手中,以第二名成绩获得金牌。
在搜狐的时候,张朝阳就这么评价王小川的:“小川在少年时期就是计算机才子,获得奥利匹克信息学的冠军。搜狗这个团队都特别精英,是清华计算机系的……整个团队是技术很牛的团队....”
放在美国的话,USACO 是美国选手上升至 IOI 的唯一选拔体系,而在中国的话,那就是中国青少年信息学奥林匹克竞赛(NOI)。
看到这你可能就会问了,不懂 USACO 啊,那不妨跟 USAMO 对应看看。Quora上有一个问答大致解释了两者的对应程度,这位斯坦福大学本科生用户就根据自己参加AMC12和相应USACO的不同级别考试给出了一个参考:
USACO Bronze: AMC 8 Honor Roll
USACO Silver: AMC 12
USACO Gold: AIME
USACO Platinum:USAMO (预估)
擅长数学的学生,学习编程很可能也会得心应手。两者是相辅相成的关系,并且对学生的思维乃至知识点的要求非常相似。举个例子:USACO Bronze 和 Silver Level,要求参赛者学习和了解基本的代数和平面几何知识;到了 Gold 和 Platinum Level,对数论的良好理解有助于解决诸如散列和二进制求幂之类的主题,一些inclusion 和 exclusion 问题需要用到组合数学。
为了写出一行逻辑通顺没有 bug 的代码,程序员需要加强他们的算法思维(algorithmic thinking)和计算思维(computational thinking)。这两种思维方式的最深层本质是什么?是数学。归根结底,如果我们的同学希望学好编程,那么他们的数学思维也需要足够好,才能取得成功。数学是贯穿编程中的每个算法、序列和软件模型的支柱和基础。
若您的孩子擅长或者热爱数学,并且也愿意挑战自己,那么,不妨尝试学习竞赛级别的编程,也就是之前介绍的 USACO 和 IOI。
从实际角度出发,以申请好的 STEM 大学以及申请计算机专业为目的的话,USACO 的好成绩同样极具说服力和权威性,但是竞争性,目前却比数学小很多。
此外,湾区孩子更因为资源优势,例如出自单码乃至双码家庭,那么学习编程就不是从大学,而是从小学、中学就能抓起了!