又是一年女队名额,只能说一年比一年差了有点,比赛前一天睡太多了导致比赛当天太困了Zzzzz
复盘了之后深刻意识到保持脑子清晰有多重要,思维题选手居然把签到题做成了数论题实在不能忍受,再不好好打代码我是狗好吧
最终4题,2题在手里debug,还有一题有点思路没有然后了
B:比赛当场推公式的我有多狼狈,看完题解后我就有多崩溃,果然是没睡醒
实际上来说,就是求n个数字的排列种类
我:???什么fft,什么玩意儿woc
反正拿着队友给的几个结论,最后把公式推出来了,是我
D:是谁用矩阵快速幂写斐波那契,啊是我
切最多种类就是从1*1、2*2开始切,直到最大和次大的边长和比n小,明显斐波那契。
有笨蛋写了半天没看出来斐波那契,换给队友后队友说要用O(1)算斐波那契,刚好这学期两场校赛都出了矩阵快速幂,然后比赛当场快速预习(找板子)
结果,直接暴力就行,tmd
安慰自己,学会了快速幂
H:模拟,题目太长不放上来了,反正交给挂件做了,然后挂件卡了小一会,不过我也不想看了就是说
J:我亚索贼牛()
当第一个是敌方小兵的时候,无解
否则,可以通过来回蓄力来达到重点
考虑如果遇到自己的小兵就踏,否则就斩,当没力的时候就来回蓄力,每次通过+6s来+2力
在结果的地方,如果还有力的话说明可以在上一个踏的地方改成砍,因为蓄力一定是在没力的之后,所以一定是往前踏的时候改成砍,来回-2力-2s,解决
天,我有多久没用出一遍过的题了,太感动了
#include
using namespace std;
struct XD{
int t,l,r,lo;
};
XD a[100005];
bool cmp(XD a,XD b)
{
return a.l>n>>m;
for(int i=1;i<=m;i++)
{
cin>>a[i].t>>a[i].l>>a[i].r;
a[i].lo=a[i].r-a[i].l+1;
}
sort(a+1,a+1+m,cmp);
if(a[1].t==2) {
cout<<"0/21/0\n";
return 0;
}
long long ans=0,powe=0;
bool post=0;
for(int i=1;i<=m;i++)
{
if(a[i].t==1)
{
ans+=a[i].lo*3;
powe+=a[i].lo;
// cout<
F:和队友交流了一下思路就去看其他题了,导致这题最后有bug,唉,赛后自己写了一遍,还真写bug了,最后自测样例过了,不知道还有没有其他bug。
社恐很好处理,扔到空位就行,社牛的话就要找能做的桌子中序号最小点
考虑维护剩余不同空位的桌子的堆,分别为1,2,3,4个空位的堆,每次提出最大点
但是有个问题,人走了之后堆不好处理
考虑建一个数组,储存每个桌子的空位数量,在每次修改人数的时候都通过查询空位将桌子加入对应的堆中,此时会出现一个桌子被重复储存,但其中肯定有一个是在正确的堆里,因此当提出的最大点和记录的空位数量不太一致的时候,直接扔掉就ok啦
解决!
上码!
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
L:一眼记忆化搜索,队友飞快写完,然后发现要输出初始点,最后没改出来,丢
E:将一大块同色块处理成点,而边上的联通块中间连线,处理成图
上课摸鱼写题解,要pre了,不说了,先这样
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)