2020.05.23【NOIP普及组】模拟赛C组34 总结
这次比赛我考了330分,第5名,还可以。
题目

解题方法
这道题目的解题方法是直接模拟。
题目要求出i=1minnj=1∑i86400−aj≥t。
我们直接每一次减去86400−aj就行了。
或者可以设si表示j=1∑i86400−aj,则si=si−1+86400−ai或si=86400i−j=1∑iaj。
其中j=1∑iaj可以用前缀和维护。
得分情况
比赛时满分。
题目


解题方法
这道题目的解题方法是斜率和贪心。
我们知道一个直线的斜率为xi−xjyi−yj,这里我们用ai表示斜率,ai=xi−x0yi−y0。
其实在同一条直线的所有恐怖分子可以直接消灭。
那么每一次我们就对a进行排序并找到有多少个不同的斜率即可。
不懂斜率的可以看这里。
得分情况
比赛时30分。
改题后满分。
题目


解题方法
这道题的解题方法是贪心。
贪心策略
每一次我们选择数量大的进行采摘,然后看一下是否可以摘,如果可以就摘掉,不可以则不摘。
具体实现
把所有花生存到一个数组里边,然后以数量为关键字排序,这里设ai为行,bi为列,ci为数量。
然后用一个s数组存最少时间,则
si={ai+1si−1+∣ai−ai−1∣+∣bi−bi−1∣+1i=1i>1
接着我们看一下si+ai(加上回去的时间)是否小于等于k,如果小于等于,则答案加上数量,否则不加。
得分情况
比赛时满分。
题目



解题方法
这道题的方法是动态规划。
设fi,j表示一种颜色用了i,另一种颜色用了j的方案。
则
fi,j=fi−1,j+fi−1,j−1×j
初始化f0,i=1,fi,0=1。
然后我们可以发现答案为fa,b×fb,c×fa,c。
注意要开longlong,然后要边乘边模。
得分情况
比赛时满分。