2026 USACO計算機奧賽賽程進行中!
第二場月賽已結束!
同學們都“打怪升級”成功了嘛?
第二場月賽真題+答案+視頻解析已就位
掃碼即可免費領取!

銅級參考解析

銀級參考解析

金級級參考解析
掃碼免費領取!

更多信息可咨詢顧問
翰林計算機羅老師、衛老師和姜老師在考后的第一時間為大家分別深入剖析了金級、銀級和銅級的核心考點!來看看本場考試都考了哪些知識點吧~
點擊查看2025-26賽季 USACO計算機奧賽第一場月賽解析詳情:2026年USACO計算機競賽首場真題+解析+參考答案已出!清華/UC系導師助力進鉑金!
USACO第二場月賽分析
銅級篇
1、近年分數線

26年第二場比賽的分數線還未定,參考以前的標準和這次的難度,大概會是700、750這兩個檔次。
02、難度分析
這次銅級的難度,比本年度的第一場比賽稍微難一些。
滿分不是輕易就能夠得到的,特別是第二題的complete search的數據量比較大,如果想不到利用bitwise operations進行優化可能拿不到所有分。
不過,參考往屆晉級線(700~750分),達到晉級分數應當是可以實現的。
03、考點分布
第一題【Simulation】
基本上就是一道從后往前的模擬題,需要大家觀察一下最終輸出的字符和哪些因素有關:
原本按下的是什么鍵,在這個鍵之后有多少個O; 對于每一個位置,如果它之后的O的按鍵出現偶數次,這個位置就應該顯示的和按鍵的一致,出現奇數次,這個位置就應該是和顯示相反的字符; 從前往后模擬不可以的情況下,我們就嘗試從后往前模擬就可以了。
第二題【Complete Search】
這道題第一眼的感覺就是complete search,并且board的塊數并不大,只有20,大家肯定會想到2^20種可能性,然后對每一種可能性檢查得分,但是這道題的查詢數量也高達2*10^5,如果把查詢數量和board的可能性相乘,這個時間復雜度是不能接受的。
這時候我們就要想辦法怎么去做優化,complete search的優化的關鍵在于避免重復計算,那我們就看看這里面有哪些操作可以縮減和合并的,因為這個字符串的每個字符只有2種形式,很容易會想到用bit string來表示,既然用bit string了,大家就可以順理成章的想到bitwise的相關operations,因為我們每次只選擇3個字符,并且是不同位置的字符,一共有20種選擇,那么3個字符的選擇的種類也就縮減到20*19*18=6840種,也就是查詢數量的量級直接降到了原來的接近1/30。
再這個基礎上還可以做優化,在某一種board的組合下,如果查詢的三個塊對應的位置(x,y,z)符合MOO,那么所有除了這三個位置以外的N-3個位置就可以是任意的組合,這些組合都可以累計得分。
最終我們把所有的組合的分梳理選擇一個最大值,再把等于這個最大值的組合統計出來就完成了題解。
第三題【Greedy + 預處理】
這道題也運用到了二進制拆解的技巧,因為任何一個整數都可以拆分成多個2次冪的和,利用這個特性,我們就可以以2的不同的冪次作為單位,構建最終的x的容量。
我們還需要對每個2的冪次單位的牛奶的最優價格做預處理,不僅要考慮在價格更低的情況下用小容量組成大容量,還需要考慮過度購買容量卻更便宜的情況。
我們的題目要求是購買大于等于x單位的牛奶,所以,最終在構造x的容量時,需要在精確購買和過度購買之間選擇一個更劃算的作為答案。
銅級考點小結
總體而言,銅級三道題的考察點分布比較均勻,特別是上次提到第一場沒有涉及的【Simulation】,在本次考試進行了考察,對于complete search如何優化是大家需要平時重點關注的一個點,以及對于二進制,bitwise operation相關的優化技巧的熟悉也是必不可少的。
以上內容由翰林姜老師提供 🔽

翰林計算機姜老師
華東師范大學
計算機本碩連讀(Top 4免試直升)
◾上海市優秀畢業生,主攻算法與系統優化方向;16年全棧研發專家,技術棧覆蓋嵌入式/C++高性能計算/分布式系統,持有7項國家技術專利;
◾ 前阿里技術專家,平安銀行風控系統架構,設計實時風控系統,每年防堵金額25億人民幣;
◾大廠級工程化訓練:融合ACM/USACO真題與工業級代碼規范;動態難度適配系統:實時檢測學員薄弱點,智能調整訓練方案;競賽心理建設:針對IOI/USACO賽制設計壓力訓練模塊;
◾執教戰績(部分):
2024賽季學員表現:3位學員晉級金組(其中2位初中生)、5位Gold組學員全部晉級,最短僅用8周
獨創"算法思維拆解法",幫助學員3個月內從Bronze沖刺至Gold
USACO第二場月賽分析
銀級篇
1、近年分數線

26年第二場比賽的分數線還未定,參考以前的標準和這次的難度,大概會是700、750這兩個檔次。
02、難度分析
這次銀級的難度,比本年度的第一場比賽也會難一點。基本上沒有涉及到我們強調的重點算法,都是對大家邏輯思維推理、數據結構使用的考察。
晉級難度和滿分難度,都會比上一場高。不過有些題目和以前的真題非常相似,我們要多多鍛煉這種【舉一反三】的能力。
03、考點分布
第一題【Greedy】
這是一道帶貪心的構造題目,和上次比賽的第三題有點像。從圖論看的話,是一個【哈密頓回路】。這道題的關鍵,要先從局部出發,在原環中如果v在u右邊,那么必須滿足R[u]=L[v]。明確這個條件以后,就可以推導出3個必要條件:JN和NJ個數相等;JN和NN個數總和必須是偶數;NN、JJ都有的情況下,必須有JN。
后面構造的過程,可以有多種方案,核心就是用JN和NJ來做狀態切換,確保回到開始的時候,是一致的狀態。比較簡單的方案,就是先全部JJ,再用一個JN切狀態,再全部NN,再用一個NJ切狀態,最后剩余的JN、NJ交替使用就可以。
今年的兩場比賽,都涉及到了【貪心構造】問題,這類問題各不相同。大家要學會從局部出發,比如這里我們先考慮u和v的關系,往往這是題目的一個突破口。
第二題【Simulation + Priority queue】
這是一道模擬題,需要結合【從后往前】考慮的思想,并且要選用合適的數據結構存儲信息,降低時間復雜度。如果大家做【2020 open s2 Cereal】這道題的話,會覺得它們基本上是同一個問題,只不過在上面做了一個加強。
首先,因為查詢的都是后綴,所以想到從后往前處理。每次新加入一個牛,會先去看最小的條件(所有條件要先排序,因為最小條件先被選擇),不過這個看的過程就要進行拆解。我們需要記錄,每個條件目前已經選中哪些牛。如果總個數還沒有達到上限制的話,那么直接被選中,然后結束。否則的話,不要直接放棄,而是要看可不可以替代某個牛,因為同一個條件會先選rank小的牛(這里直接找到rank最大的牛,看能不能替代就可以)。如果能替代的話,那么被替代的牛,也要重復這個過程,去找自己能匹配的條件;不能替代的話,目前的牛就只能繼續去看下一個條件。整體過程中,為了快速找到rank最大的牛,可以選用【Priority queue】去優化。
總體這是三道題中最簡單的,不過給的數據有點多,要理清它們之間的關系,選擇合適的數據結構,實現部分用recursion可能會更容易實現。上次比賽的第一題也是【simulation】,也是從后往前考慮的思路,大家要重視。
第三題
【Two Pointers + Priority queue + Sweep Line】
這是一道環上【區間指針】的問題,不過難點在于可以不是單一方向。簡單部分,就是一個經典問題,對于每個位置j,找到一個以它開始的最小連續區間,能包含所有的數字類型。這個問題,在【區間指針】專題做過很多,不過這里可以也反方向。需要再算一次以j作為結尾,最小的連續區間。
不過麻煩的,可以不是單一方向。也就是j在[L,R]區間范圍內,可以先去到L再去R,或者先去R再去L。這里分析可以看出,具體哪一種取決于j和(L+R)/2的大小關系。但是直接枚舉計算會超時,我們可以利用【Sweep Line】的想法,定義三類事件:1、j等于L;2、j等于(L+R)/2+1;3、j等于R。再定義兩個【Priority queue】小頂堆,pq1存滿足j在區間左側一半的R-2L,pq2存滿足j在區間右側一半的2R-L。想象一下j從小變大,對于某個固定區間,會先觸發事件1,進入pq1;再觸發事件2,從pq1移除進入pq2;最后觸發事件3,從pq2移除。實際實現時,直接刪除不好實現,可以延遲刪除,想要取出top的時候,把已經過期的先不斷刪除即可 。
總體這道題應該是三道題中比較難的,不過想到O(N^2)的方案應該還算容易,【區間指針】也是我們強調的重點。【Sweep Line】的思想,銀級本來沒有涉及,大家也可以提前學習接觸下。
銀級考點小結
總體而言,銀級這次對于核心算法的考察很少,所以很多同學會覺得很難,因為題目比較靈活,需要你自己去推理找到很多關鍵點。
最后一場比賽,不知道它的出題風格,可能會繼續偏邏輯推理,也可能會回歸到重點算法。所以對于【Binary Search】、【Tree】等還沒有涉及的重點算法,后面大家多多關注。
以上內容由翰林衛老師提供 🔽

翰林計算機衛老師
清華大學軟件工程碩士
南京大學軟件工程學士
◾ 畢業后在一家上市視頻監控公司,從事軟件開發工作,負責核心流媒體中臺項目,擔當公司最新技術的探索和轉化職責。
◾ 教學方面,對待學生耐心負責,講解知識深入淺出,在有限知識內最大化地實現教學目標。
◾執教戰績(部分):
-2024-2025 NZOI賽季,輔導1名學生入選新西蘭國家隊,參加國際信息學奧賽IOI;
-2024-2025 USACO賽季,輔導16名學生晉級銀級,14名同學晉級金級,2名同學晉級鉑金級;
-2023-2024 USACO賽季,輔導3名學生晉級鉑金,9名學生晉級金,14名學生晉級銀;
-2022-2023 USACO賽季,輔導5名學生晉級金,11名學生晉級銀。
USACO第二場月賽分析
金級篇
1、近年分數線

26年第二場比賽的分數線還未定,但是這次比賽過程中,最后半個多小時系統崩潰,所有同學都沒法提交代碼,官方說會適當降低晉級線。參考以前的標準和這次的難度,大概會是750,800分檔次。
02、難度分析
本次金級比賽展現了較高的綜合素養要求,題目不僅考察了基礎算法的熟練度,更強調了對數學性質(如凸性)的挖掘以及對特殊圖論結構(如基環樹)的深刻理解。
03、考點分布
第一題【Binary Search + Math】
外層是一個明顯的Binary Search,內層的check 函數并非簡單的貪心,而是轉化為尋找凸函數的極值,這是金級題目中常見的“套路升級”。
通過研究不同情況下的函數,會發現呈現出斜率從-1、0、1或者-1、1的跳躍。為了找到全局最小值,可以轉換為求這些跳躍點的中位數問題。還有對高精度與大數據范圍的考察,涉及 10^18 級別的操作數K,要求使用 int128處理中間計算結果。
第二題【BFS + Greedy】
貪心與搜索的結合,將字典序與BFS結合,考察了在動態過程中維護最優性質的能力。
第三題【Functional Graph】
圖論結構的深度考察,要求考生能熟練處理環與樹枝的邏輯關系。
金級考點小結
總體而言,今年的變化在于題目不再提供直觀的算法切入點,而是隱藏在多層數學模型和圖論結構之下,對選手的“預處理意識”和“結構拆解能力”提出了更高要求。
以上內容由翰林羅老師提供 🔽

翰林計算機羅老師
美國加州大學河濱分校
計算機科學學士,碩士
◾擁有十年美國留學工作經歷,可全英文授課。熟悉多門計算機語言:Java, Python, C, C++,VHDL,Verilog。對計算機程序與計算機硬件的底層交互邏輯有較為深刻的認識。
◾ 課堂教學過程中,注重培養學生自我學習能力,激發學生內在學習動能,引導學生掌握正確的學習方法。
◾執教戰績(部分):
-2024年輔導1名學生晉級USACO白金級。
-2024年輔導8名學生晉級USACO金級。
-2024年輔導18名學生晉級USACO銀級。
-2023年輔導21名學生晉級USACO銀級。
-2023年輔導10名學生晉級USACO金級。
-2023年輔導2名學生晉級USACO白金級。
計劃參加新賽季USACO競賽的同學,可以趁現在系統學習算法、并通過刷題鞏固基礎。
為幫助大家高效備賽,翰林現推出針對USACO各級別的專項班課,由劍橋與清華背景的學姐帶隊指導,為學員提供專業講解與實戰經驗分享!

我要報名/咨詢!
更多信息可咨詢顧問



