2024年12月USACO首场比赛参赛和获奖情况说明!USACO不同等级含金量如何?

近年来,随着STEM教育的普及和编程教育的兴起,USACO的参赛人数和热度持续上升。对于计划申请美国高校理工科专业的学生来说,获得USACO的金牌或白金级别的奖项无疑是提升申请竞争力的重要武器。

2024年12月USACO首场比赛参赛和获奖情况

总体参赛情况

总登录用户数:共有15,564名用户登录参加此次比赛。

实际参赛者数量:12,170名参赛者提交了至少一个解决方案,这些参赛者来自超过100个国家和地区。

主要参赛国家:美国本土有4,940名参赛者参与,而中国、加拿大、韩国、罗马尼亚、马来西亚和印度等国的参赛者也表现出较高的参与度。

编程语言使用情况

最常用语言:绝大多数参赛者选择了C++作为编程语言,其中18,801个提交使用了C++17,5,079个使用了C++11。这表明C++在USACO中的主导地位。

其他语言:Python 3.6.9(4,910个提交)、Java(3,344个提交)、C(230个提交)以及少量的Python 2.7.17(120个提交)也被广泛采用。

各组别参赛详情

铂金组:该级别共有421名参赛者,其中260名为高中及以下的学生。

金组:此级别吸引了1,012名参赛者,包括697名高中生及更低年级的学生。任何得分达到700分或以上的参赛者将自动晋升至铂金组。

银组:4,656名参赛者参加了这一级别的比赛,其中3,410人为高中及以下的学生。

铜组:参赛人数最多的级别,共有11,472名参赛者,8,373名为高中及以下的学生。

USACO不同等级含金量

01 USACO铜级

作为入门级别,铜级主要帮助学生积累基础编程知识和竞赛经验。它类似于AMC10数学竞赛的定位,为后续更高级别的比赛打下坚实的基础。

虽然单独来看铜级的直接含金量较低,但它标志着学生正式踏入了编程竞赛的世界,是迈向更高成就的第一步。

02 USACO银级

晋级到银级需要在铜升银比赛中取得750至800分的成绩,这一成就可以与AMC12相提并论。对于非计算机专业的申请者来说,银级已经足以展示其对计算机科学的兴趣和一定的能力,尤其是在跨学科交流中能够提供额外的优势。

银级不仅是对编程技能的认可,也是对学生解决问题能力和逻辑思维的肯定,有助于提升个人简历的质量。

03 USACO金级

通过银升金的比赛后,学生将证明自己在计算机科学领域的卓越能力,特别是在算法设计和复杂问题解决方面。这个级别的成就对于申请美国排名前30高校的计算机专业非常重要。

金级代表了较高的编程水平和扎实的数学思维,这对于希望深入学习计算机科学的学生来说是一个非常有吸引力的目标。它能在激烈的本科申请竞争中为学生加分不少。

04 USACO铂金级

达到铂金级别相当于在AMC12竞赛中进入前1%的水平,这是极少数顶尖学生的标志。对于那些目标是MIT、CMU等顶尖大学计算机专业的学生而言,铂金级别几乎是必不可少的条件之一。

铂金级别的成就不仅是对学生编程和技术能力的高度认可,而且是对他们坚持不懈追求卓越精神的证明。如果进一步晋级至IOI(国际信息学奥林匹克竞赛),并且符合国籍要求,那么这对申请顶级大学如MIT将产生极大的正面影响。

USACO新手必看!哪种语言是USACO的最佳选择?

USACO不仅是检验编程技能的舞台,更是申请美国Top30名校和藤校的重要“加分利器”。通过参加USACO,优秀的成绩将极大提升学生的竞争力,为未来的学术之路打下坚实基础。

哪种语言是USACO的最佳选择?

选择“最佳”的编程语言实际上取决于多个因素,包括个人的编程习惯、比赛的具体要求以及所解决问题的特点。在USACO和类似竞赛中,C++确实是一个非常受欢迎的选择,尤其是在高级别比赛中,因为它提供了对性能的高度控制,并且是国际信息学奥林匹克竞赛(IOI)唯一支持的语言。然而,对于初学者或那些更熟悉其他语言的人,Java和Python同样是非常好的选择。

C++

优势:执行速度快,内存管理灵活,拥有丰富的标准模板库(STL),适合处理复杂的数据结构和算法。

适用性:特别适合于需要高效算法实现的比赛场景,如USACO的金级和白金级,或者准备参加IOI的学生。

技术细节:使用gcc/g++ 7.5.0编译器,支持C++11/C++17特性,注意整数类型的选择(32位vs. 64位),并正确格式化输入输出(例如,`long long`应使用`%lld`)。

Java

优势:具有自动垃圾回收机制,代码安全性较高,语法相对简单,易于学习。

适用性:适合希望快速上手并且不需要极致性能优化的选手,尤其是那些已经有一定Java编程背景的学生。

技术细节:使用OpenJDK 11.0.10版本,要注意JVM堆栈大小限制为256MB,确保所有的输出都通过`System.out.println()`进行,不要重定向到文件或其他设备。

Python

优势:语法简洁明了,内置了大量的实用功能,非常适合新手快速入门。

适用性:非常适合初学者,特别是铜级和银级的参赛者;但对于更高级别的比赛,由于其相对较慢的执行速度,可能不是最优选择。

技术细节:使用Python 3.8解释器,标准输入/输出是默认的I/O机制,必须使用`input()`读取数据,用`print()`输出结果。

Pascal

现状:Pascal已经在USACO中被停止使用,因此原Pascal用户需要考虑转换到上述三种语言之一。

对于想要在USACO中取得好成绩的学生来说,如果目标是达到较高的级别或准备参加更高层次的比赛(如IOI),那么尽早转向C++会是一个明智的选择。而对于刚开始接触编程的学生,Java和Python都是不错的起点,它们可以提供一个较为平缓的学习曲线,帮助学生更快地掌握编程基础。随着技能的增长和技术需求的变化,学生可以选择切换到更适合竞赛的语言。

【扫码免费领取】USACO真题+备赛书单+一对一备考规划!

预约最新真题讲座、课程详情可扫码咨询⇓

思维导图

USACO各等级考察内容汇总!USACO各组别相当于什么难度水平?

USACO(美国计算机奥林匹克竞赛)是全球最具影响力的编程竞赛之一,面向中学生的在线编程赛事。如果错过了第一场月赛,还可以准备一下参加1月24日的第二场月赛。

USACO考察内容

Bronze(铜级):适合于刚学会编程的学生,考察的算法主要有:穷举算法(Complete Search)、模拟算法(Simulation)、贪心算法(Greedy algorithm)、全排列(Permutation)、杂类题目(Ad-hoc)、递归(Recursion);

Silver(银级):面向开始学习基本问题解决算法,考察的算法主要有:排序(Sorting)、二分查找(Binary Search)、递归搜索(Recursion)、图的遍历(DFS&BFS)、FLoodfill算法、前缀和(Prefix Sum)、扫描线算法(Line Sweep);

Gold(金级):需要有一定的算法基础,理解一些抽象的方法(例如:最短路径、动态规划),并对数据结构有比较深刻的了解。考察的主要有:堆、栈、树、链表等高级数据结构,动态规划等高级算法,算法时间和空间复杂度;

Platinum(白金级):需要有很高的编程基础,对算法有深入的了解。部分试题最后的优化方案,可能不止一个,得出的答案也不止一个。考察的主要有:各类高级的数据结构,尤其是需要算法的时间和空间复杂度。

USACO各组别难度分析

铜组

难度水平:相当于大学计算机课程CS1的水平,即入门级编程课程。

目标群体:适合刚开始接触编程的学生,帮助他们建立初步的编程技能。

银组

难度水平:接近于计算机科学中的数据结构课程(Data Structure),并包含部分算法课程的知识点。

目标群体:已经掌握了一定编程基础,希望进一步深化对数据结构和算法理解的学生。

金组

难度水平:达到了大学计算机专业算法课程(Algorithm)的标准,意味着更高的抽象思维能力和更深入的技术细节。

白金组

难度水平:符合IOI(国际信息学奥林匹克竞赛)选拔赛的要求,是最高级别的挑战。

每年仅有少数pre-college学生(不到50人)能够通过白金组考试,获得参加IOI的资格。值得注意的是,代表国家参加IOI通常还需满足特定国籍条件(例如,要代表美国参赛,则需持有美国国籍)。

【扫码免费领取】USACO真题+备赛书单+一对一备考规划!

预约最新真题讲座、课程详情可扫码咨询⇓

思维导图

牛剑G5背书高含金量赛事!不同编程基础的学生如何备考USACO?

对于有意在未来从事计算机相关领域工作或者深造的学生来说,参与USACO不仅能极大地提升他们的编程技能,还能够在大学申请过程中为他们赢得宝贵的竞争优势。特别是对于那些计划申请顶尖理工科院校的学生,USACO的成绩可以成为他们学术背景中的一个亮点,展示出他们在计算机科学方面的潜力和实力。

不同基础的学生如何备考USACO?

对于没有编程基础的选手:

选择语言:推荐从Python或Java开始学习,因为这两种语言语法相对简单,容易上手。

自学资源:可以利用在线课程、书籍和教程进行自学。例如,Codecademy、Coursera、edX等平台都有免费或付费的编程入门课程。

核心内容:重点学习数据结构(如数组、链表、栈、队列等)和基本的编程语法。

练习:通过解决简单的编程问题来强化所学知识,LeetCode、HackerRank等网站提供了丰富的练习题。

目标:以通过铜级比赛为目标,逐步提升自己的编程技能。

对于有部分编程基础的选手(如在读AP计算机科学的学生):

语言选择:考虑转向C++或C,这两门语言对性能要求较高的竞赛非常有用,并且有助于未来的学习和工作。

深入学习:除了掌握语言特性外,还应该深入了解指针、内存管理等概念。

算法和数据结构:开始学习更复杂的算法和高级数据结构,如树、图、哈希表等。

实践:参加学校或社区组织的编程俱乐部,参与团队项目,积累实战经验。

竞赛准备:专注于USACO过去的题目,尤其是银级难度的问题,提高解题速度和准确性。

对于有编程基础及编程经验的选手(如NOI参赛者):

高级算法:系统地学习并实现各种算法,包括但不限于排序、搜索、动态规划、贪心算法等。

优化技巧:学习如何优化代码效率,理解时间复杂度和空间复杂度的概念。

真题训练:集中精力做金级和白金级的历年真题,模拟真实的比赛环境。

分析与总结:每次做完题目后,认真分析错误原因,记录下不懂的地方,并查找资料加深理解。

持续进步:不断挑战自我,尝试解决更难的问题,保持对新知识的好奇心和探索欲。

无论哪一类考生,都应当注重理论与实践相结合,定期评估自己的进度,并调整学习计划以确保最佳效果。

【扫码免费领取】USACO真题+备赛书单+一对一备考规划!

预约最新真题讲座、课程详情可扫码咨询⇓

思维导图

2024-25 USACO 12月月赛各等级考题分析!附1月月赛考点预测!

2025年的USACO竞赛新规已经公布,这对广大的参赛选手而言,意味着新的挑战与机遇。“USACO竞赛可以说是一年一度的爬藤必备‘大杀器’”。如果学生能够在USACO竞赛中取得优异成绩,相当于为自己打开了美国前30名高校的大门。这一机会,对于许多希望进入顶尖大学的学生来说,显得尤为珍贵。

2024-25UASCO首场分数已出!

我们也汇总了12月月赛最新真题,备赛的同学快来扫码领取吧

2024-25 USACO 12月月赛分析——铜级篇

分数线趋势

2024年12月的USACO铜级晋级分数线为700分,这与过去几年的分数线相比大致维持在一个平均水平。参赛者需要完成两道题目并部分解决第三题(通过大约10%的测试数据)就能达到晋级要求。

竞赛难度分析

从官方设定的700分晋级分数线来看,此次铜级比赛难度定位在平均偏上。相较于去年12月的比赛,难度有所降低,并且考察的知识点较为常规,没有出现特别复杂的算法或逻辑推理题。

考点分析

第一题【Ad Hoc】:这类问题通常不需要特定的算法,而是依赖于数学推理和归纳能力来发现规律。建议考生从小规模的数据开始尝试,大胆猜测并验证规律。

第二题【Simulation】:模拟题型是铜级的重点之一,通常涉及使用数组等基础数据结构来模拟某个过程。本次比赛中此类题目相对简单,主要考验对问题的理解和实现能力。

第三题【Complete Search】:枚举类问题是上个赛季较少见到但在本月重新出现的一个考点。许多学生在这道题上遇到了困难,主要是因为未能选择合适的枚举策略,导致代码复杂度增加。熟悉一些经典的枚举方法,如团队组建、代表选取等,可以帮助更高效地解决问题。

小结与未来准备方向

总体而言,铜级考试的考点分布非常均衡,覆盖了我们平时强调的重点内容。对于后续比赛,建议关注以下考点:

后面的比赛,大家可以多多关注【Greedy】、【Simulation】(特别是直接模拟会超时的问题)、【Sorting】、【Ad Hoc】等考点。

2024-25 USACO 12月月赛分析——银级篇

分数线趋势

2024年12月的银级晋级分数线同样设定为700分,相比前一年略有下降,反映出题目难度可能有所调整。

竞赛难度分析

从700分的分数线可以推测出,这次银级比赛难度被定位为平均偏上。相比于上个赛季,本场次的题目更加贴近常规,重点在于之前讲授过的算法知识点。

考点分析

第一题【Prefix Sums】:前缀和是一种重要的预处理思想,常用于加速某些类型的查询操作。此题还结合了一个最优策略的问题外壳,需要选手具备较强的逻辑推理能力。

第二题【Greedy Algorithms with Sorting】:区间贪心算法是银级的一个难点,但这次的题目设计较为传统,即便无法完全解决,也能通过部分正确的方法获得分数。

第三题【Flood Fill】:图论中的洪水填充算法是一个常见的考点。该题采用逆向思考的方式求解,体现了灵活运用不同思路的重要性。

小结与未来准备方向

银级的考点也保持了较高的常规性。未来备考中,除了巩固现有知识外,还可以提前学习一些金级的内容,如【Segment Tree】、【Stack】、【Dynamic Programming】等,这对提升解题效率大有裨益。同时,也要注意【Binary Search】、【Tree】、【Sorted Sets】、【Coordinate Compression】等考点。

2024-25 USACO 12月月赛分析——金级篇

分数线趋势

金级的晋级分数线从800分降至700分,这种显著的变化可能是由于引入了“certified score”机制以及中国赛区同学在凌晨时段参加比赛的状态不佳所致。

竞赛难度分析

尽管分数线降低了,但金级的难度仍然处于平均偏上的位置。这次比赛确实存在一定的挑战,特别是在算法的选择和应用方面。

考点分析

第一题【Square Root Decomposition】:这是一个铂金级别的考点,结合了二分查找和差分等技术。接触更高一级别的算法有助于更好地应对金级竞赛。

第二题【Dynamic Programming】:DP问题一直是金级的重头戏,此次的题目难度较大,尤其是针对时间复杂度的优化。掌握O(N^2)的基本做法,并学会利用【Segment Tree】进行优化,是获取高分的关键。

第三题【Greedy Algorithms with Sorting】:这道题相对较容易,主要考察的是银级水平的区间贪心算法,说明即使是金级题目,也可能包含较低级别的知识点。

小结与未来准备方向

金级的考点除了动态规划外,其他并不完全是常规内容,比如图论这次就没有涉及。为了迎接未来的挑战,建议重点关注【Dynamic Programming】、【Graph】、【Segment Tree】、【DP on Tree】等主题,同时也可预先了解铂金级别的高级概念,如【Divide & Conquer】、【Square Root Decomposition】、【Binary Jumping】等。

通过以上分析,希望每位参赛者都能找到适合自己的复习路径,合理规划学习进度,在接下来的比赛中取得更好的成绩!

【扫码免费领取】USACO真题+备赛书单+一对一备考规划!

预约最新真题讲座、课程详情可扫码咨询⇓

思维导图

USACO 不同等级的具体要求是什么?附2025年USACO备赛技巧!

USACO竞赛的历史可以追溯到29年前,至今已成为美国最具认可度的计算机赛事之一。参与这项活动的学生不仅能够提升自己的编程能力和问题解决能力,同时也能在申请过程中脱颖而出。许多顶尖高校在审阅申请时,尤其偏爱那些能提供USACO优异成绩的学生,这为申请者打开了通往名校的大门。

USACO 不同等级的具体要求

Bronze(铜级)

基础编程语法:能够熟练使用至少一种编程语言的基础语法,包括变量、循环、条件语句、函数等。

基础算法运用:理解并能实现简单的算法,如排序(冒泡排序、选择排序等)和查找(线性查找),以及基本的数学运算。

Silver(银级)

编程解决问题的能力:不仅限于实现给定算法,还需要根据具体问题场景选择最恰当的数据结构和算法组合来高效地解决问题。

常规算法与中级数据结构:熟悉数组、链表、栈、队列等基础数据结构;能够运用贪心算法、递归思想、深度优先搜索(DFS)和广度优先搜索(BFS)等解决实际问题。

Gold(金级)

编程能力很强:拥有扎实的编程基础,能够在复杂环境中灵活应用多种编程技巧。

优秀的算法基础:深入理解动态规划(DP)、图论中的最短路径算法(Dijkstra, Floyd-Warshall)、最小生成树算法(Kruskal, Prim)等高级算法。

问题抽象方法:能够将复杂问题简化为更小的部分,并设计出有效的解决方案。对高级数据结构(如堆、哈希表、树等)有较深的理解。

Platinum(白金级)

编程功底深厚:不仅编程技术娴熟,而且对各种编程语言特性和工具链有广泛了解。

深入的算法理解:对于各类高级算法(如网络流、线性规划、数论算法等)有全面的理解,并能在实际问题中灵活应用。

算法优化能力:擅长从多个可能的解决方案中挑选最优解,注重算法的时间和空间复杂度优化。

综合能力:面对复杂问题时,能够将其建模为适当的算法问题,并设计出高效的解决方案。此外,在这个级别的考试中,部分试题可能允许多种不同的优化方案,强调的是学生的创造性思维和实际运用能力。

2025年USACO备赛技巧

扎实掌握基础算法与数据结构

数据结构:确保你对基本的数据结构如数组、链表、栈、队列、树及图等有深入的理解,并能熟练运用。这些是解决复杂问题的基础。

经典算法:深入学习并练习常见的算法,包括但不限于贪心算法、深度优先搜索(DFS)、广度优先搜索(BFS)、排序算法(快速排序、归并排序)、二分查找等。理解每种算法的工作原理及其适用场景。

深入钻研编程语言

选择合适的编程语言:根据USACO的统计数据,C++是最受欢迎的选择之一,特别是在12,170名参赛者中有超过18,801人使用了C++17,还有5,079人选择了C++11。这表明C++在USACO中的普及率很高,且具有性能优势。因此,如果你还没有确定使用的编程语言,可以考虑将C++作为首选。

熟悉语法和特性:无论选择哪种语言,都要彻底熟悉其语法结构、内置函数库以及最佳实践。对于C++而言,了解STL(标准模板库)是非常重要的,因为很多常用的数据结构和算法已经在其中实现好了。

借助真题与练习题开展练习

利用官方资源:USACO官方网站提供了历年的题目和解答,这些都是非常宝贵的练习材料。定期访问网站,完成最新的月赛题目,并尝试不同的解法以加深理解。

拓展外部平台:除了USACO官网,还可以通过其他在线评测系统来增加实战经验。例如:

  - Codeforces:一个活跃的编程竞赛社区,提供大量高质量的题目和比赛。

  - LeetCode:专注于面试准备,但也有许多适合USACO级别的算法挑战。

  - UVa Online Judge:拥有庞大的题库,涵盖从入门到高级的各种难度等级。

反思与改进:每次做完一道题后,务必花时间回顾自己的解题过程。思考是否有更简洁或高效的解决方案,同时也要注意代码风格和可读性。记录下遇到的问题和学到的新知识,以便日后复习。

【扫码免费领取】USACO真题+备赛书单+一对一备考规划!

预约最新真题讲座、课程详情可扫码咨询⇓

思维导图

2024年12月USACO晋级分数线解读!USACO对大学申请有何助力?

纵观未来,参与USACO等国际大赛,不仅能帮助学生增强自身的竞争力,也为他们提供了一个展示自我、施展才华的平台。在这个信息化的时代,拥有强大的编程能力和算法思维,无疑是走向成功的一条捷径。

2024年12月USACO第一轮比赛晋级分数线:

青铜升白银:700分或以上

白银升黄金:700分或以上

黄金升铂金:700分或以上

值得注意的是,这次的分数线相比于往年有所降低,这可能是因为题目难度并未如预期般增加。对于想要晋级的选手来说,如果能够正确解答两道完整的题目加上部分解答第三题,就有可能达到晋级所需的700分。

金升铂金以及更高阶段的晋级考试有特别的时间要求,即考生必须在北京时间周日凌晨1:00到1:15之间开始考试。错过这个时间窗口将影响升级资格。因此,准备参加第二轮及后续轮次USACO竞赛的考生需要特别注意这一点,确保自己能够在规定的时间段内开始考试。

USACO对大学申请的助力?

顶尖大学的认可

包括MIT、Stanford、CMU在内的众多知名高校都非常重视USACO的成绩。USACO不仅仅评估学生的编程技能,更重要的是它反映了逻辑思维、算法设计和解决问题的能力,这些都是顶尖大学计算机科学及相关专业招生时关注的核心素质。

国际学生的加分项

对于国际学生来说,一个Gold或Platinum级别的USACO成绩是其学术能力的重要证明,特别是在标准化考试影响力逐渐减弱的情况下。这样的成绩可以显著增强申请材料的吸引力,成为进入理想院校的关键优势。

展示专业技能

编程和技术能力:USACO成绩能够直观展示学生的编程水平和技术实力,特别是在计算机科学领域内,这是非常重要的加分项。

逻辑思维与问题解决能力:竞赛中的题目要求参赛者具备良好的逻辑推理能力和高效的问题解决方案设计能力,这些都是名校计算机相关专业关注的重点素质。

体现个人特质

学习动力与自律性:成功晋级到更高级别或取得优异成绩的学生通常表现出强烈的学习动机和高度的自我驱动力,这些都是大学招生官所看重的品质。

时间管理和抗压能力:比赛限时完成任务的要求锻炼了学生的时间管理能力和应对压力的心理素质,这对于未来的学术研究和职业生涯发展同样重要。

【扫码免费领取】USACO真题+备赛书单+一对一备考规划!

预约最新真题讲座、课程详情可扫码咨询⇓

思维导图

USACO竞赛获奖率如何?晋级机制是怎样的?不同级别考察哪些内容?

在众多国际竞赛中,信息学奥林匹克竞赛(信奥)以及国内举办的一些竞赛,如CSP、NOIP等,都是备受关注的赛事。然而,作为一项国际性赛事,美国计算机奥林匹克竞赛(USACO)是非常值得参与的赛事。USACO不仅可以显著提升参与者的算法能力,还有助于加深大学申请时的竞争优势。

USACO竞赛获奖率

USACO竞赛四个等级难度是层层递增的,各个级别的获奖率也是逐渐下降的,所以越往高等级对学生能力要求越来越高。

USACO铜级(Bronze):通过率大约在15%左右。

USACO银级(Silver):通过率较低,大约在5%-6%。

USACO金级(Gold):通过率最低,大约在2%-3%。

晋级机制

起始组别:所有新注册的选手默认从Bronze(青铜)级别开始。

晋级条件:在比赛中获得足够的分数以达到晋级分数线,或者取得满分成绩直接晋级。

晋级时间:比赛结束后的1-2周内,官方会在USACO官网上公布成绩及晋级名单。

各级别考察内容

青铜级(Bronze)

编程基础:熟悉至少一种编程语言的基础知识。

基本算法:能够实现简单的排序和查找算法。

问题解决:可以将简单的问题转化为代码解决方案。

白银级(Silver)

数据结构:掌握常见的基础数据结构。

算法进阶:包括贪心算法、递归与搜索、二分查找等。

问题解决:能够选择合适的数据结构和算法解决问题。

黄金级(Gold)

高级数据结构:如堆、哈希表、树等复杂数据结构。

高级算法:动态规划、图论算法等。

数学基础:数论、组合数学等的应用。

铂金级(Platinum)

高级数据结构与算法:更复杂的高级数据结构和算法。

算法优化:关注算法效率和复杂度分析。

综合能力:能够处理更为复杂的算法问题并设计高效解决方案。

对于想要参加USACO或正在准备晋级的选手来说,了解这些信息是非常有帮助的。根据自己的当前级别,有针对性地学习相关知识点和技术,是提高竞赛表现和成功晋级的关键。此外,定期参与练习赛和过去的真题练习也是提升技能的有效途径。

【扫码免费领取】USACO真题+备赛书单+一对一备考规划!

预约最新真题讲座、课程详情可扫码咨询⇓

思维导图

2024 年 12 月比赛——最终结果

USACO 2024 年 12 月的比赛以算法编程问题为特色,涵盖广泛的技术和难度级别。

在为期 4 天的比赛中,共有 15564 名不同的用户登录了比赛。共有 12170 名参与者提交了至少一个解决方案,来自 100+ 个国家/地区。4940 名参与者来自美国,其中来自中国、加拿大、韩国、罗马尼亚、马来西亚和印度的参与人数也很高。 总共有 32484 篇评分的提交,按语言细分如下:

18801 C++17
5079 C++11
4910 Python-3.6.9
3344 Java
230 C
120 Python-2.7.17

以下是白金、黄金、白银和铜奖比赛的详细结果。 您还可以找到每个问题的解决方案和测试数据。

USACO 2024 年 12 月竞赛,白金奖

白金组共有 421 名参与者,其中 260 名是大学预科生。最高认证得分者的结果在这里。祝贺所有最优秀的参赛者取得优异的成绩!

1 All Pairs Similarity
查看问题 | 测试数据 | 解决方案
2 It's Mooin' Time
查看问题 | 测试数据 | 解决方案
3 Maximize Minimum Difference
查看问题 | 测试数据 | 解决方案

USACO 2024 年 12 月比赛,金奖

黄金组共有 1012 名参与者,其中 697 名是大学预科生。所有在本次比赛中获得 700 分或更高认证分数的参赛者将自动晋升到白金组。这份获得晋升的美国大学预科生名单可以在这里找到。

1 Cowdependence
查看问题 | 测试数据 | 解决方案
2 Interstellar Intervals
查看问题 | 测试数据 | 解决方案
3 Job Completion
查看问题 | 测试数据 | 解决方案

USACO 2024 年 12 月比赛,银奖

白银组共有 4656 名参与者,其中 3410 名是大学预科生。所有在本次比赛中获得 700 分或更高分的参赛者将自动晋级黄金组。

1 Cake Game
查看问题 | 测试数据 | 解决方案
2 Deforestation
查看问题 | 测试数据 | 解决方案
3 2D Conveyor Belt
查看问题 | 测试数据 | 解决方案

USACO 2024 年 12 月比赛,铜奖

铜牌组共有 11472 名参与者,其中 8373 名是大学预科生。所有在本次比赛中获得 700 分或更高分的参赛者将自动晋升到银牌组。

1 Roundabout Rounding
查看问题 | 测试数据 | 解决方案
2 Farmer John's Cheese Block
查看问题 | 测试数据 | 解决方案
3 It's Mooin' Time
查看问题 | 测试数据 | 解决方案

结语

2024-25年USACO赛季开局良好!本次比赛的参赛人数众多,许多学生都获得了晋级(有些学生甚至晋级了多个组别)。对于那些尚未晋级的学生,请记住,练习得越多,你的算法编码技能就会越强——请坚持下去!USACO比赛旨在挑战最优秀的学生,要想脱颖而出,需要付出大量努力。为了帮助你修复代码中的任何错误,你现在可以使用“分析模式”重新提交你的解决方案,并从评判服务器获取反馈。

提醒大家注意我们竞赛中学术诚信的重要性——请记住,我们对作弊采取零容忍政策。为了减少作弊的诱因,同时保持我们的竞赛对所有人开放以供练习,我们现在只报告晋升为白金组的美国学生的金牌组成绩(我们仍会向询问美国和非美国学生成绩的大学招生官核实USACO成绩,但如果学生因作弊被取消资格,也会报告)。

众多人士为USACO竞赛的质量和成功做出了贡献。本次竞赛的协助人员包括周伟明, 马崇天, 梁伟霖, 苏哈斯纳加尔, 齐本杰明, Linda Zhao, Agastya Goel, Gavin Ye, Tina Wang, Jiahe Lu, Nick Wu, Brandon Wang, Andi Qu, 钱继超, Daniel Zhang, William Lin, Larry 邢, Michelle Wei, Thomas Liu, Richard Qi, Benjamin Chen, Austin 耿和 Eric Yang。还要感谢我们的翻译人员帮助我们扩大了竞赛的影响范围。最后,我们非常 感谢 USACO 赞助商的慷慨支持:Citadel, Ansatz、X-Camp、TwoSigma、VPlanet Coding、EasyFunCoding、Orijtech 和 跳跃交易。

我们期待着2025年1月比赛时再次与大家相聚。

祝您编码愉快!

2024年12月美国计算机奥赛USACO竞赛铜奖组问题三—It's Mooin' Time

Farmer John is trying to describe his favorite USACO contest to Elsie, but she is having trouble understanding why he likes it so much. He says "My favorite part of the contest was when Bessie said 'It's Mooin' Time' and mooed all over the contest."

Elsie still doesn't understand so Farmer John downloads the contest as a text file and tries to explain what he means. The contest is defined as a string of lowercase letters of length N (3≤N≤20000). A moo is generally defined as the substring cicjcj where some character ci followed directly by 2 occurrences of some character cj where cicj. According to Farmer John, Bessie moos a lot, so if some moo appears at least F(1≤F≤N) times in the contest, that might be from Bessie.

However, Farmer John's download might have been corrupted, and the text file might have up to one character that differs from the original file. Print all possible moos that Bessie could have made taking the potential error into account, sorted in alphabetical order.

INPUT FORMAT (input arrives from the terminal / stdin):

The first line contains N and F, representing the length of the string and the frequency threshold for a moo by Bessie.

The second line contains a string of lowercase letters of length N, representing the contest.

OUTPUT FORMAT (print output to the terminal / stdout):

Print out the number of possible moos that Bessie makes, followed by a lexicographically sorted list of the moos. Each moo should appear on a separate line.

SAMPLE INPUT:

10 2
zzmoozzmoo

SAMPLE OUTPUT:

1
moo

In this case, no character change affects the answer. The only moo Bessie made was "moo".

SAMPLE INPUT:

17 2
momoobaaaaaqqqcqq

SAMPLE OUTPUT:

3
aqq
baa
cqq

In this case, the a at position 8 (zero-indexed) could have been corrupted from a b which would have resulted in "baa" being a moo that Bessie made twice. Alternatively, the q at position 11 could have been corrupted from a c which would have resulted in "cqq" being a possible moo that Bessie made. "aqq" can be made by swapping the c with an a.

SAMPLE INPUT:

3 1
ooo

SAMPLE OUTPUT:

25
aoo
boo
coo
doo
eoo
foo
goo
hoo
ioo
joo
koo
loo
moo
noo
poo
qoo
roo
soo
too
uoo
voo
woo
xoo
yoo
zoo

SCORING:

Inputs 4-8: N≤100
Inputs 9-13: No additional constraints.

Problem credits: Suhas Nagar

扫码领取USACO试题答案+详细解析

咨询一对一备赛规划

USACO竞赛考试网-二维码