2024 USACO计算机竞赛铜级真题解析

时间:2024-02-23 10:35:19  作者:网络 来源:网络

2024年2月的USACO竞赛已经结束,题目整体难度比一月份简单,代码量较少,老师给大家带来了USACO真题视频解析附USACO题库/教材下载,想参赛备考USACO的同学,可以加老师微信18710542862领取~

 

USACO 2024年2月铜牌第一题

USACO竞赛

题解视频分析

 
 
 
 

 

代码

#include <bits/stdc++.h>
using namespace std;
int main(){
    ios::sync_with_stdio(false);
    int T;
    cin>>T;
    while (T--)
    {
        string s;
        cin>>s;
        int n=s.length();
        if (s[n-1]=='0') cout<<"E"<<endl;
        else cout<<"B"<<endl;
    }
    
    return 0;
}

USACO 2024年2月铜牌第二题

图片

 

题解视频分析

 
 
 
 
 

代码

#include <bits/stdc++.h>
using namespace std;
#define int long long
const int N=5e5+100;
int a[N];
char s[N],s2[N];
signed main(){
    ios::sync_with_stdio(false);
    int n,m;
    cin>>n>>m;
    cin>>s;
    for (int i=n;i<2*n;i++) s[i]=s[i-n];
    int sum2=0;
    for (int i=0;i<n;i++) {
      cin>>a[i]; a[i+n]=a[i];
      sum2+=a[i];
    }
    int sum=0;
    for (int i=1;i<=n;i++) sum+=(s[i-1]=='R');
    if (sum==n||sum==0){
        cout<<sum2<<endl;
        return 0;
    }
    int tt=0;
    for (int i=0;i<n;i++)
      if (s[i]=='R'&&s[i+n-1]=='L') tt=i;
    for (int i=tt;i<tt+n;){
        int j=i;
        int now=0;
        for (j=i;j<tt+n;j++)
          if (s[j]==s[i]) {
            now+=a[j];
          } else break;
        j--;
        if (s[i]=='R') now-=a[j];
        else now-=a[i];
        sum2-=min(now,m);
        i=j+1;
    }
    cout<<sum2<<endl;
    return 0;
}

USACO 2024年2月铜牌第三题

图片

 

题解视频分析

 
 
 
 

 

代码

#include <bits/stdc++.h>
using namespace std;
const int N=1e6+10;
int a[N],b[N];
int n,m;
int f[N];
int main(){
    ios::sync_with_stdio(false);
    cin>>n>>m;
    for (int i=1;i<=n;i++) cin>>a[i];
    for (int i=1;i<=n;i++) cin>>b[i];
    for (int i=1;i<=n;i++){
        if (a[i]>b[i]) f[a[i]-b[i]-1]++;
    }
    for (int i=1e6;i>=0;i--) f[i]+=f[i+1];
    while (m--){
        int x,y;
        cin>>x>>y;
        if (f[y]>=x) cout<<"YES"<<endl;
        else cout<<"NO"<<endl;
    }
    return 0;
}

 

USACO竞赛赛事安排

 

报名官网:http://www.usaco.org/

报名费:无;学生直接登录官网注册账号,免费报名

竞赛级别:铜、银、金、铂金

竞赛类型:个人赛

考试题型:3道编程题

编程语言:C/C++、Python、Java、 Pascal,推荐用C++。

考试时长:月赛4小时,公开赛5小时

满分:1000分

晋级分数线:700-800分,至少做对两道半题。【满分直接晋级,不是满分,则需要本场月赛结束后公布晋级线才能确定是否晋级下一等级考试;因此理论上,只要实力够强,一次赛事,可以直接到铂金级别。

竞赛时间:

USACO竞赛每年有四场比赛,每场比赛有4个级别,考试时间分别是2023年12月和今年的1月、2月、3月。前三场月赛考试时长为四小时,共计三道题;而3月的公开赛考试时长为5小时,题目会比月赛更难一些。

 

USACO竞赛

USACO竞赛的等级分为青铜、白银、黄金和白金四个档次。每个赛季的每一场比赛,这四个级别都会同时进行。学生注册就是青铜从青铜级别打起,达到一定的分数才能在下一场比赛晋级到上一个级别。

 

USACO竞赛

备考资料领取

可扫描下方二维码

👇👇👇

 

 

 

USACO竞赛

 

 

 

微信:XNEW16888

 

关键字:USACO竞赛,USACO培训班,USACO竞赛辅导,

推荐资讯
Contact Us