USACO 2019 December Contest 随记】的更多相关文章

Forewords 今年 USACO 的比赛变化挺大的,有部分分了,而且不再是固定十个点了(部分分只说这几个点满足这几个性质,以为十个点的我还高兴了一会,一提交,...),除此之外居然赛后还排名了.这场打得意外的顺手,但是还是有点小遗憾吧.样例强度还是有点不够高的,但 IOI 赛制嘛,也不能说啥. T1 Milk Pumping 上来看错题,打了个最小生成树,结果别人只要一条路径给弄出个树来妥妥的超过最优解爆零.仔细看题了以后发现还行,就是个有限制的最短路,每个限制枚举一遍很暴力但是数据不是很大…
模拟二月金组,三个半小时AK. USACO 2019 Feburary Contest, Gold T1 题意:给定一棵树,每个点有点权,每次可以进行以下操作之一: 更改一个点的点权 求某条路径上的点的点权的亦或值 思路:这这这...金组什么时候第一题都是树链剖分了... 这题是个树链剖分的模板题.(但是我捣鼓了好久... 首先将原树进行树链剖分,将每一个节点分在一条重链内.然后链与链之间用轻链连接. 对于操作1,我们只用将这个点的值在\(BIT\)中修改即可. 对于操作2,我们这样处理: 首先…
Problem 2. Fruit Feast 很简单的智商题(因为碰巧脑出来了所以简单一,一 原题: Bessie has broken into Farmer John's house again! She has discovered a pile of lemons and a pile of oranges in the kitchen (effectively an unlimited number of each), and she is determined to eat as m…
题意比较难理解,就是给你n个点的树,然后给你m个修改操作,每一次修改包括一个点对(x, y),意味着将x到y所有的点权值加一,最后问你整个树上的点权最大是多少. 比较裸的树链剖分了,感谢Haild的讲解. 首先第一遍dfs预处理出size,son(重儿子). 第二遍dfs重编号. 然后线段树就可以了. 感觉就是把一棵树弄成一条一条的链,新奇的hash方法. #include <bits/stdc++.h> #define rep(i, a, b) for (int i = a; i <=…
t1 Convention 题目大意 每一头牛都有一个来的时间,一共有\(n\)辆车,求出等待时间最长的那头牛等待的最小时间. 解法 第一眼看到这道题还以为是\(2018noip\)普及组的t3魔鬼题,但是不一样. 我们因为要查找最大最小值,很容易就想到用二分查找. 那么直接查找答案,也就是等待的时间,然后用\(O(n)\)的复杂度的贪心验证就可以了,放的下且能放进去,那么就放. 总体复杂度是\(O(nlogn)\) \(ps.\)要注意边界的判断. t2 Convention II 题目大意…
Usaco 2019 Jan Platinum 要不是昨天老师给我们考了这套题,我都不知道usaco还有铂金这么一级. 插播一则新闻:杨神坚持认为铂金比黄金简单,原因竟是:铜 汞 银 铂 金(金属活动性顺序表) Usaco真是慢的不行,所以就贴洛谷链接啦. Redistricting: https://www.luogu.org/problemnew/show/P5202 题意概述:给出一个长度为N的序列,由'H'和'G'组成,将它分为任意段,每段的长度不超过 $K$ ,要求最小化(H比较少的段…
AtCoder diverta 2019 Programming Contest 2 看起来我也不知道是一个啥比赛. 然后就写写题解QWQ. A - Ball Distribution 有\(n\)个气球\(k\)个人,每个人至少要拿一个气球.问所有分配方案中拿走气球最多的那个人可以比最少的那个人多拿多少个. 打比赛的时候一开始没看到题,别人说输出\(n\% k\)就过了,然后我就过了. 现在重新一看题解... 应该是\(k=1\)时,答案是\(0\),否则答案是\(n-k\). #includ…
diverta 2019 Programming Contest 2 A - Ball Distribution 特判一下一个人的,否则是\(N - (K - 1) - 1\) #include <bits/stdc++.h> #define fi first #define se second #define pii pair<int,int> #define mp make_pair #define pb push_back #define space putchar(' ')…
diverta 2019 Programming Contest 因为评测机的缘故--它unrated了.. A - Consecutive Integers #include <bits/stdc++.h> #define fi first #define se second #define pii pair<int,int> #define mp make_pair #define pb push_back #define space putchar(' ') #define…
A 签到(a-b problem不用贴了吧,以后atcoder小于300分题均不贴代码) B 发现选择的p,q一定是其中两点间的距离,于是可以O(n2)枚举两点,再O(n2)判断,其实可以做到O(n3)不过O(n4)就够了. #include<bits/stdc++.h> using namespace std; typedef long long ll; int n,ans; ll x[],y[]; int main() { scanf("%d",&n); ans…