发布时间:2024-02-26 15:14:58 编辑:小Q来源:网站
USACO竞赛怎么备考?竞赛分为多个等级,我们为大家分析一下银级别的题目解析,给大家一些参考,此外,还有不同年级的USACO竞赛备考规划,欢迎咨询网站客服了解详情~
本月比赛出现了两个变化:
①由于参赛人数过多,网站在比赛过程中崩溃了。
②在1月赛中,USACO官方提供了中文题面,对年龄段较低的信奥选手非常友好,建议都可以尝试做一下本次比赛的题目。
有q对(x,y)的输入,每对表示前1~x个数右边第一个比它们大的数必须在下标为y的位置,这
句话还有一个隐藏含义就是第x+1到第y-1个数必须比前1~x个数的最大值要小,即第y个数
比前y-1个数都要大(代码中称为前缀最大值)。用一个前缀和数组pre_max[i]表示前i个数中的
最大值,则a[y]至少为pre_max[y-1]+1。
现在从左往右遍历a[N],分类讨论每一个a[i]的情况:
1.a[i]==0且位置i是前缀最大值,令a[i]=pre_max[y-1]+1
2.a[i]==0且不是前缀最大值,根据贪心思路令a[i]=1(字典序最小)
3.a[i]不为0,是第x+1到第y-1个数的其中一个,但是比前x个数要大,破坏了前缀最大
值的要求,此时需要把之前的某个能改的值提高为a[i]
对全部a[N]修改完毕后,再重新for循环扫描一遍看看新的a[N]有没有冲突,有冲突输出-1
注意事项:这题有T个测试,每个输出最后不能带空格
以房间1为根节点的树。每次traversal相当于从根出发,沿着父子关系一直走,一个traversal
的终点一定是一个叶节点,因此最小的traversal数必定为叶节点数量,可以用dfs得到,假设
这个数量是k。可以用树上DP来记录每个节点的子树拥有的叶节点数量,状态转移方程为
dp[fa]+=dp[child],则dp[1]就是整棵树拥有的叶节点数量
此时来看题目对potion的描述,每次traversal会在一个节点生成一个potion,下一次traversal
前消失,而我们只会有k个(即dp[1]个)traversal。因此实际上只需要考虑前k个potion。而由
于potion是依靠traversal获取的,因此potion和traversal,也就是叶节点,是一对一绑定的。
假设我们目前在某个节点p,从点p出发获得的potion数量不会超过点p的子树拥有的叶节
点数量。我们再用一个树上DP,potion[p]表示点p的子树拥有的potion数量,状态转移方程
为potion[fa]+=potion[child]。统计完毕后再令potion[p]=min(potion[p],dp[p])。
最终potion[1]就是本题答案。
抽屉原理+同余性质
题目等价于N个数除以L最多只有3个不同的余数,根据抽屉原理,任意选择4个不同的数,
必定至少有两个数a[i]和a[j]除以L的余数相同(即模L同余)。由同余的基本性质可知abs(a[i]-
a[j])必定能被L整除。因此本题只需要从a[N]中任选4个不同的数,枚举它们的两两差值(一共
有=6种),对这6个数,枚举它们的所有因子fac,进行检验(看看a[1]到a[N]除以fac是不
是最多只有3个余数),符合要求则令ans+=fac。
USACO的前四场比赛是在线进行的,而且欢迎世界各地的选手参加,近年来随着国内信奥学习热度暴增,参加USACO的国内选手人数也与日俱增。
对于希望提升或检验自己信息学水平的中国选手,USACO是非常值得参加的;对于有前往美国留学意向的选手,USACO Platinum白金组的获奖,也是相当硬核的履历加分项!
对于这一阶段的孩子来说,培养编程计算机的兴趣和思维能力更重要。建议大多数同学通过参加编程俱乐部,或者编程活动使得学生对编程有浓厚的兴趣,在编程方面可以从较为简单的Scratch、Code.org入手,了解基本的编程概念和算法原理。
接触编程比较早的同学,从6年级开始就已经系统的学计算机相关知识了。那么对于刚接触USACO竞赛的同学来说,可以先以USACO竞赛语言为突破口,先学习编程语言,对编程零基础的同学可以从Python或Java入门,并学习对应的数据结构和算法。可以通过USACO竞赛官方的题库在线练习,在一定练习后可以准备USACO竞赛铜级考试。
在这个阶段,学生已经掌握了较为扎实的基础知识,可以正式参加USACO竞赛实战了,在备考时,重点是深入学习数据结构和算法,需要熟练掌握至少一门编程语言,建议学习C++语言,后面如果想继续挑战信奥赛也是支持C++语言的。
在备考USACO竞赛时还建议同学们多参加模拟比赛以及解题训练,不断优化解题思维。
这些学生面临着申请压力,通过USACO竞赛来提升申请竞争力是很明智的,因为USACO竞赛备赛周期短,出分快还是很香的。
学生这一阶段需要提升USACO竞赛奖项含金量,比如争取达到USACO白金级别。
USACO竞赛培训辅导课程:咨询网站客服了解~
AP03-08
小托福04-03
美国留学04-05
微信咨询