發(fā)布時(shí)間:2024-02-05 09:04:42
編輯:犀牛牛來源:犀牛國際教育瀏覽:次
USACO計(jì)算機(jī)編程競賽的1月月賽已經(jīng)完美結(jié)束啦,這次題目難度比較大,不少學(xué)生在參加USACO競賽時(shí),對計(jì)算機(jī)語言運(yùn)用還是不夠熟練,那么我們一起來復(fù)盤以下2024年1月考題情況,一起來看下,文末有USACO競賽輔導(dǎo),在線咨詢客服老師~
USACO 2024年1月黃金組別考情分析
第1題
考察算法:二分,觀察性質(zhì)
首先假設(shè)當(dāng)前在x軸朝向上行走,什么時(shí)候會轉(zhuǎn)向到y(tǒng)軸?
我們發(fā)現(xiàn)當(dāng)且僅當(dāng)當(dāng)前道路距離下一條道路是奇數(shù)距離的時(shí)候會轉(zhuǎn)向
于是我們可以考慮去二分轉(zhuǎn)向的次數(shù),計(jì)算出在當(dāng)前轉(zhuǎn)向次數(shù)下運(yùn)動的距離,判斷它是否小于等于題目給出的運(yùn)動距離
代碼實(shí)現(xiàn)較為復(fù)雜,需要注意細(xì)節(jié)
時(shí)間復(fù)雜度:$O((n+q)*log)
第2題
考察算法:動態(tài)規(guī)劃
和銀組第一題類似
定義$i$這個(gè)位置是前綴最大值當(dāng)且僅當(dāng)$a[i]>a[j]$ (for all $1le j
我們會發(fā)現(xiàn)對于某個(gè)$(a[i],h[i])$相當(dāng)于要求$[a[i]+1,h[i]-1]$這一段不能是前綴最大值,$h[i]$這個(gè)位置必須是前綴最大值
最終我們將相同情況的序列合并在一起,那么就是有最多$3*Q$段的序列(每一段內(nèi)部要么要求一定是前綴最大值/一定不是前綴最大值/沒有要求),求最終合法的方案數(shù)
定義$dp[i][j]$代表當(dāng)前考慮到前$i$段數(shù),選的數(shù)的最大值是$j$的方案數(shù)
假設(shè)當(dāng)前這一段序列長度為$len$
當(dāng)一定是前綴最大值時(shí):
$dp[i][j]=sum_{k=1}^{j-1} dp[i-1][k]$
當(dāng)一定不是前綴最大值時(shí):
$dp[i][j]=dp[i-1][j]*j^{len}$
當(dāng)沒有要求時(shí):
$dp[i][j]=dp[i-1][j]j^{len} + sum_{k=1}^{j-1} dp[i-1][k](j^{len} -(j-1)^{len})$
時(shí)間復(fù)雜度:$O(qclog)$
第3題
考察算法:二分
注意到分給Bessie自己的數(shù)越多答案相應(yīng)的會越大,但是會越容易滿足題目限制
所以我們考慮去二分分給Bessie的個(gè)數(shù)$mid$
那么它們分別被加入序列的時(shí)間就是$mid, mid + (mid-1) ,... , mid+...+1$
顯然我們比較希望盡量靠后的數(shù)能被加入到Bessie的序列中,所以對于每一個(gè)加入序列的時(shí)間我們可以貪心的去找到第一個(gè)大于當(dāng)前時(shí)間且沒有被插入到序列中的數(shù),將它插入到序列中
這個(gè)過程可以用類似于雙指針的思想來優(yōu)化
最終$min(數(shù)字最大值,mid*(mid+1)/2)$就是我們的答案
2023-2024年USACO活動時(shí)間
第一次月賽:2023年12月15日-18日
第二次月賽:2024年1月26日-29日
第三次月賽:2024年2月16日-19日
美國公開賽:2024年3月15日-18日
(中國學(xué)生只能參加到公開賽)
集訓(xùn)營:2024年5月23日-6月1日
EGOI:2024年7月21日-27日(荷蘭)
IOI:2024年9月1日-8日(埃及)
報(bào)名方式:參賽者可隨時(shí)在官網(wǎng)注冊賬號,注冊。報(bào)名,只需在活動時(shí)間登陸完成答題即可。
官網(wǎng)地址:usaco.org
提交之后,官網(wǎng)會發(fā)送一份郵件到您郵箱,郵件中有賬號密碼
利用已知的賬號于密碼,登錄USACO賬號,即可開始考試
犀牛國際計(jì)算機(jī)競賽教研團(tuán)隊(duì)依據(jù)美國下一代科學(xué)標(biāo)準(zhǔn)NGSS,美國計(jì)算機(jī)教師協(xié)會K-12教育標(biāo)準(zhǔn),美國共同核心州立標(biāo)準(zhǔn)CCSSS,設(shè)計(jì)編程課程。
犀牛USACO競賽采用體系化的專業(yè)教材,將競賽知識點(diǎn)和國際課程知識點(diǎn)整合。USACO教研組老師曾帶出多名白金組學(xué)員,擁有專業(yè)的教學(xué)能力。
課程目標(biāo):完成USACO的知識點(diǎn)的學(xué)習(xí)。通過系統(tǒng)地梳理,充分的練習(xí)熟悉考試的題型和難點(diǎn)重點(diǎn),沖刺USACO競賽高分
USACO初級班:適合計(jì)算機(jī)編程剛?cè)腴T,語言基礎(chǔ)薄弱,無比賽經(jīng)驗(yàn)計(jì)劃申請計(jì)算機(jī)專業(yè)的中學(xué)生;
USACO中級班:適合至少會一門計(jì)算機(jī)編程語言(推薦C++或Java),算法基礎(chǔ)一般,少量比賽經(jīng)驗(yàn)的學(xué)生
USACO高級班:適合具有完善的計(jì)算機(jī)編程語言基礎(chǔ),有入門算法經(jīng)驗(yàn),一定比賽經(jīng)驗(yàn),如NOIP,USACO銀組等的學(xué)生
目前,犀牛已在上海、北京、廣州、深圳、蘇州、杭州、南京、青島、無錫、武漢、合肥、成都等多個(gè)城市開設(shè)校區(qū),線上線下全面開班,提供國際競賽、國際課程、語言培訓(xùn)、擇校、留學(xué)一站式課程培訓(xùn),致力于為每一家庭提供優(yōu)質(zhì)服務(wù)。
微信咨詢
支付二維碼