日前,USACO 2024-25赛季最后一场月赛已收官,分数线也已公布,翰林有3位学员晋升至铂金,7位学员晋升至金级,10位学员晋级至银级!
详情戳→ 3铂金7金10银!USACO 2月月赛放榜,翰林学员战绩再创新高!
本场月赛结束后,
翰林计算机卫老师再次针对考题
进行了难度分析及考点梳理
......
备考USACO的同学快来看看吧~
翰林计算机卫老师
清华大学软件工程硕士
南京大学软件工程学士
◾毕业后在一家上市视频监控公司,从事软件开发工作,负责核心流媒体中台项目,担当公司最新技术的探索和转化职责。
◾教学方面,对待学生耐心负责,讲解知识深入浅出,在有限知识内最大化地实现教学目标。
◾ 执教战绩(部分):
•2024-2025USACO赛季(进行中),辅导2名学生晋级铂金,13名学生晋级金,13名学生晋级银
• 2023-2024 USACO赛季,辅导3名学生晋级铂金,9名学生晋级金,14名学生晋级银
•2022-2023 USACO赛季,辅导5名学生晋级金,11名学生晋级银
01、考情分析-铜级篇
01)近年分数线
2025年2月月赛的分数线是700,这个赛季目前为止都是700。只需要2题全对,第3题通过10%的测试数据就可以。
年份 |
|
1月 | 2月 | 3月 |
|
700 | 700 | 700 | / |
|
700 | 750 | 750 | 650 |
|
750 | 750 | 750 | 750 |
|
700 | 750 | 700 | 700 |
02)难度分析
这次铜级的难度,从官方给定的700分数线推断,应该定位在一个平均偏上的位置(750是一个平均难度)。难度相比于前两场,稍微小一点,是一场比较容易晋级的比赛。
03)考点分布
▶ 第一题【Complete Search + Simulation】
这道题只需要根据对称性,找到每4个组成的一组位置,去计算每一组最少需要操作次就可以。此外,每次变化只会影响当前的一组位置,不需要全部重新计算。相比于前两场的【Complete Search】,难度比较小,想到思路实现基本不会出错。
▶第二题【Greedy】
这道题需要大家去观察,找到对应的贪心思路。可以通过例子,分析出操作次数就是【前面0的个数】和【当前数值出现次数】的较大值。相比于前两场的【Greedy】,也是难度稍小,代码非常简洁。
▶第三题【Complete Search】
三道题中最难的一题。如果前两题全对,这道题只需要对最简单的k=1的情况,基本上是送分问题,k=2也比较简单。可以先把k=1和k=2的逻辑写好,k=3时,先找到重复出现的subarray,再看每个subarray能否切割成k=1或者k=2的情况,实现细节比较多。如果k继续变大,金级的【区间dp】就会更加方便,大家可以适当学一些。
总体而言,铜级的考点分布比较均衡,也都是我们平时强调的重点。不过想要拿满分,需要有比较好的思维分析能力,和细致的代码实现能力。
02、考情分析-银级篇
01)近年分数线
年份 |
|
1月 | 2月 | 3月 |
|
700 | 700 | 700 | / |
|
750 | 750 | 750 | 650 |
|
750 | 700 | 700 | 750 |
|
700 | 750 | 650 | 800 |
2025年2月的分数线是700,这个赛季目前为止都是700。相比于去年的常规赛,继续小幅度下降。
02)难度分析
这次银级的难度,从官方给定的700分数线推断,也是定位在一个平均偏上的位置。相比于1月份的比赛,相对回归了正常。特别是【Tree】的问题,终于在这一场进行了考察,遗憾的是【binary search】还是没有涉及。
03)考点分布
▶ 第一题【Greedy With Sorting】
可能是这三题中比较难想的一题。很多同学可以想到,要按照数值大小依次遍历。这里关键在于什么时候需要往前移动,并不是找到大的就要往前移,而是要看在它和前一个大于等于它的数值之间的max,是否大于等于它后一个到最后的max,这样移动才是有效的。
最后只要输出【字典序最大】的subsequence,这个方案有很多,金级的【单调栈】也是一种比较简易的实现方法。
▶第二题【Tree】
这道题最最难的可能是读懂题意了,确实很不好懂,而且sample的解释也很笼统。读懂以后,就可以抽象出一个tree,再在这个tree上去分析。只要一个node的parent下的children>1,那么就必须一直问到该node,否则就不断往上直到找到一个这样的node。实现部分,用tree的基础模板,求出一些基本信息,比如children个数、depth深度等,都是我们经常用到的。
第三题【Ad Hoc】
又是一个【逆着思考】的问题。这个赛季,基本上每场都会有这么一道题,需要反着去考虑,所以大家一定要经常想想这种策略。逆着从cd到ab,因为还原肯定是把小的从大的数值中减去,所以就简单很多。避免超时问题,肯定不能慢慢减,直接用除法计算次数就可以,注意一些边界情况。
总体而言,银级的考点比较均与,有偏思维也有偏经典算法的题,还算友好。满分有点难,想到对应的点,通过这场比赛还是有希望的。700的分数线,对大家的要求也不算太高。
03、考情分析-金级篇
01)近年分数线
2025年2月的分数线是700,相比于去年的800,今年的分数线持续低走。这和金级引入【certifiedscore】有很大关系。
中国赛区同学,在凌晨1点开始比赛,状态都会没有那么好,可能也是导致整体成绩不太高的原因。
🚩特别提醒:如果要参加open赛,那么时候已经是【夏令时】,对应的北京时间会是周日凌晨0点。
年份 |
|
1月 | 2月 | 3月 |
|
700 | 700 | 700 | / |
|
800 | 800 | 800 | 700 |
|
700 | 750 | 750 | 750 |
|
750 | 650 | 750 | 800 |
02)难度分析
这次金级的难度,从官方给定的700分数线推断,也是定位在一个平均偏上的位置。和1月份的分数线一致,题目难度都比较均衡,【Dynamic Programming】和【Tree】的比例加重。
03)考点分布
▶第一题【DP on Trees】
如果要满足要求,每个component都是一个【functional graph】,并且是若干条链组成的【directed tree】最终指向一个【cycle】。
此外还有一个【greedy】的步骤,就是a[i]要去改变的话,改成i是最优的,这样所有a[j]等于i的就不用改。剩下的问题,就是考虑在【cycle】和【directed tree】上分别进行dp。1月份的比赛,也考察到了这个内容,这个赛季对于【DP on Trees】的考察很频繁,大家要引重视。
▶第二题【Greedy + Binary Search】
三道题中想拿满分最难的一题。贪心的策略,容易想到subsequence中肯定前面全是1,再跟上一段后缀。这个查分割点的过程,可以通过【binary search】去完成。同时N又特别大,用【Coordinate Compression】,离线处理只去计算题目中出现的区间位置。还有【快速幂】等算法点的考察,代码量很大,一些实现细节也比较麻烦。对大家的要求很高,不过如果只想拿部分分,基本思路对了就可以。
▶第三题【Bitmask DP】
很容易往这个算法去尝试,因为N的数值范围很小。同时它又和【Graph】结合起来,特别是要去分析当前Graph的complement必须是一个clique,这就要求大家有一定的推理总结能力。实现起来,按照【Bitmask dp】的固定模板写就可以,所以大家经典的DP模板也要很熟练。
总体而言,金级的考点相比于上个月,三道题的平均难度都不算小,晋级的难度也没有减小。算法的考察比重加大,1月份出现过的内容,又再次进行考察,所以不能认为之前有过的就不会再出现。
04、未来趋势
24到25赛季,除了open赛以外,已经全部结束。
每个级别的分数线,都是700分(open赛应该也不会比这个高,因为毕竟难度会更大)。每个级别的考察,都有偏逻辑思维和偏经典算法的考察。
部分同学可能更喜欢前者,部分更适应后者。所以大家要抓住每一次机会,遇到适合自己的场次,这样通过的概率就会明显增加。
本期福利
USACO 2025年 2月月赛真题
扫码领取!
对于申请出国留学的学生来说,USACO能够获得金或者白金级别的奖项,能够大大增加申请“砝码”!
因此,翰林推出了USACO不同级别的班课,助你高效备战,冲刺白金!
* 以上赛事主办方为海外机构,不与任何中国的大学、中学或小学升学加分活动挂钩,其成绩不会作为任何中国中小学升学或评优的依据,仅定位为针对中学生的课外兴趣活动和国际教学交流活动。
我要咨询/报名
更多信息可咨询顾问