2024 国庆集训日记

DAY 1

MORNING

6:00 上学的闹钟没关,被迫醒来)打开 QQ 空间发现生物集训的女神 5:00 就起来卷了【强行起床洗漱。

上午是 zhx 的课,讲的是前一天晚上熬夜做的那套题,最大的感觉是还有好多算法没掌握好。

中午吃的 3WiCH,好久没吃了好吃😋,上上期《音乐缘计划》拿来下饭。

AFTERNOON

一套模拟题( zhx P199 ),应该是这段时间来做的比较简单的一套题吧【狂拿部分分。

做题顺序:T1 -> T4 -> T3 -> T2 。

生理期有点难受,做 T4 过程中睡了一觉。


T1

用 map 当桶,利用前三个数字判断其他数出现的次数:

if(mp[a[1]]==mp[a[2]]) return mp[a[1]];
else if(mp[a[1]]==mp[a[3]]) return mp[a[1]];
else return mp[a[2]];

再跑一遍寻找不同的数字就 OK 了:

for(int i=1;i<=n;i++)
        if(mp[a[i]]!=tmp){
            printf("%lld",a[i]);
            return;
        }

期望得分 \(100\)

T2

观察特殊性质:

对于另外 20% 的数据,\(type_i\) = 3。

直接敲了个 Dijkstra 板子。

期望得分 \(20\)

T3

直接拿数组超级暴力:

if(op==1){
    int x,y,z;
    scanf("%lld%lld%lld",&x,&y,&z);
    for(int i=x;i<=y;i++){
        s[i].sum+=z;
        while(s[i].level<k&&s[i].sum>=a[i][s[i].level+1]) s[i].level++;
    }
}
else if(op==2){
    int x,y,res=0;
    scanf("%lld%lld",&x,&y);
    for(int i=x;i<=y;i++) res+=s[i].sum;
    printf("%lld\n",res);
}
else{
    int x,y,res=0;
    scanf("%lld%lld",&x,&y);
    for(int i=x;i<=y;i++) res+=s[i].level;
    printf("%lld\n",res);
}

想再拿点特殊性质的分的,但是实在是不太舒服就不想写了。

期望得分 \(30\)

T4

首先可以看到大量的特殊性质:

对于另外 10% 的数据,\(𝑥 + 𝑦 = 0\)

对于另外 20% 的数据,\(𝑥 + 𝑦 = 1\)

对于另外 20% 的数据,\(𝑥 = 1, 𝑦 = 1\)

所以这里直接进行一个分类讨论:

scanf("%lld%lld%lld",&n,&x,&y);
for(int i=1;i<=n;i++){
    scanf("%lld",&f1[i][0]);
    f2[i][0]=f1[i][0];
}
if(x==0&&y==0) tbcsolve1();
else if(x==1&&y==0) tbcsolve2();
else if(x==0&&y==1) tbcsolve3();
else if(x==1&&y==1) tbcsolve4();
else tbcsolve5();
if(_<SHENSELF) tbcclear();

显而易见,这里 tbcsolve5 是对非特殊性质的处理,这里利用 st 表处理【但是没有过掉大样例,怀疑 st 表出锅

期望得分 \(50\)


交上题之后打了会儿赛博台球就收拾收拾回家了。

EVENING

还是要享受一下假期的)跟麻麻吃着小龙虾看上周的《音乐缘计划》😋

不太舒服,11:30 早点睡了。

DAY 2

MORNING

这两天身体状态不好真的很烦😐起晚了……

赶到教室的时候已经讲完题了。

剩下的时间在干什么不记得了……

中午继续遇事不决华莱士,一边吃一边做了一篇天学网英语听力,挺简单的轻松满分~

然后机房团建 generals 的时候刚好碰到 sheep32768 带领他在北京集训的朋友们来一起玩了。

AFTERNOON

做梦熊 NOIP 十三连测第九套,太难了不会了放弃了😭。

昨天做的那套 zhx P199 跑出测评:100+20+30+20=170。显然 D 离期望挂了 30 分。

死因如下:

int qmi(int a,int b){
    int res=1;
    while(b){
        if(b&1) res=res*a%mod;
        a=a*a%mod;
        b<<=1;//就是这里,日常搞不清左移右移
    }
    return res;
}

改成 b>>=1 之后就顺利拿到了 50 分。

不知道干什么了,拿出来缩点题单又刷了几道。

EVENING

临回家时拍了张照:

我从电脑前站起身来,拉开窗帘,发现六点半的天竟已经黑了下来

今天的太阳属实算不上温暖,冻得我翻出了过年的衣服

可此时的太阳好像绽放了自己最后的光芒

此时的它,如同烈火,点燃了夜

回家之后学了点 whk(10.10 的月考感觉像一把刀架在我脖子上😰)

作业:地理国庆作业 1。

复习:化学离子反应,生物第二章。

背单词。over。

DAY 3

MORNING

刷分层图题,被模板题 P4568 飞行路线 卡了 2h ,死因:

a[u].push_back({w,n*j+v});
a[v].push_back({w,n*j+u});

修改后就过了:

a[n*j+u].push_back({w,n*j+v});
a[n*j+v].push_back({w,n*j+u});

AFTERNOON

一套模拟题( zhx p191 )。


T1

枚举每一个位置,如果比四周某个位置的小方块多,其差值会贡献到答案内。

需要注意的是,每一个位置的小方块还会对答案贡献 \(+2\)(上下两个面),但当该位置小方块数量为 \(0\) 时,不会对答案做这两个面的贡献。

期望得分 \(100\)

T2

很容易考虑到,我们需要选择的节点应该是叶节点。我们需要做的有两个操作:

  • 找到当前会对答案贡献最大的叶节点。
  • 将该节点到根节点的路径上所有节点的点权设为 \(0\)

第一个操作由于节点对答案的贡献是动态的,而我并没有很好的方法处理,遂使用了 dfs 并在遍历到叶子节点的时候将跑出来的贡献值 push 进优先队列里。

第二个操作,先记录每个叶节点到根节点的路径,每选择到一个叶节点的时候就沿着路径将点权设为 \(0\) ,直到遇到一个点权已经为 \(0\) 的节点时 break

期望得分 \(30\) ~ \(60\)

T3

暴力枚举。

期望得分 \(30\)

T4

分析特殊性质部分分

对于 20% 的数据,𝑀 ≤ 8 。

暴力将矩阵打出来计数即可。

后面还分析出来两个特殊性质,但是一个赛时没调出来。

对于另外20%的数据,𝑁 = 1 。

对于另外20%的数据,所有模板长度小于等于 10 。

对于第一条,统计一下模板内出现 \(1\) 的个数,乘以模板出现的次数即可。

对于第二条,可以直接打出来 \(10\) 以内数的 lcm 长度的模板,计数后乘以模板出现的次数即可。(赛时没调出来)

期望得分 \(40\)


交完题之后就 go home 了。

EVENING

狂肝作业 ing 。

狂补化学笔记 ing 。

有点 emo,对月考真的好没把握好紧张。

DAY 4

MORNING

补 day 3 下午的题。

期望:100 + 30~60 + 30 + 40 = 200~230 。

实际:100 + 50 + 30 + 20 = 200 。

总结:比较满意啦,T4 昨天分析的第二个特殊性质出锅了,换用 unsigned long long 就可以了。尽可能拿部分分了,4h 也打满了没有罚坐的现象。

AFTERNOON

梦熊 NOIP 十三连测第十一套,事交通工具专场


T1

一眼并查集,秒了。

期望得分 \(100\)

T2

一眼是 dp,但是是二维,只能处理到 \(n \leq 2000\) 的情况。

for(int i=1;i<=n;i++) f[0][i]=f[i][0]=i;
for(int i=1;i<=n;i++)
    for(int j=1;j<=n;j++){
        f[i][j]=min(f[i-1][j],f[i][j-1])+1;
        if(a[i]^b[j]) f[i][j]=min(f[i][j],f[i-1][j-1]+1);
    }
printf("%lld",f[n][n]);

想了半天不知道怎么降维,所以只能分析特殊性质。

对于另外 20% 的数据,\(a_i=b_i\)

对于另外 20% 的数据,\(a_i+b_i=n+1\)

详细分析过程不讲了(其实就是懒得写了),代码如下:

else if(check1) printf("%lld",n+1);
else if(check2){
    if(n%2) printf("%lld",n+1);
    else printf("%lld",n);
}

期望得分 \(70\)


T3 不会分析 3 染色,T4 感觉自己调不出来了所以就提前交卷了,用时 \(30min\) 左右。

剩下的时间在刷 Faye 老师的 J 组知识点 S 组难度题单。

成绩:100 + 70 + 0 + 0 = 170 ,与期望相符。

EVENING

又是狂肝作业的一晚……国庆过去一半了但是我的作业进度离一半还好远……

感觉数学作业不算难,历史作业(我:?这玩意我听过?)。

做到凌晨一点左右睡觉了。

DAY 5

MORNING

又是起晚了的一天……

补博客 ing……

贴一条庆祝 WEX 第十三次 AK IOI:

颂魏熙AK十三IOI之辉煌昔日英豪,魏熙独步,信竞疆场展锋芒。历春秋之更迭,AK十三载,荣耀如星辰璀璨,映照编程长廊。

数据之巅,算法为王,魏熙手握利剑霜。逻辑清晰如织网,数据结构似城墙。逢赛则战,遇敌必降,犹如破竹斩豺狼,信竞征途无阻挡。

同窗之中,魏熙独强,才华横溢震四方。金牌银牌挂胸膛,荣誉满载归故乡。师长赞叹,同窗敬仰,皆言魏熙之才,天下无双。

魏熙之德,亦为人所仰。谦逊有礼,乐于助人,胸怀宽广纳千江。后学敬仰其风,前辈亦赞其刚。信息之路,因魏熙而宽广,编程之海,因魏熙而深广。

魏熙之志,如江之浩渺,如山之巍峨。愿其未来,更加辉煌灿烂,信竞疆场,续写传奇新章。

吾辈当以魏熙为榜样,勤学不辍,锐意进取。在信竞之疆,展现吾辈之风采,为家为国,增光添彩。愿魏熙之名,永载信竞之史册,流芳百世,万古传扬。

此颂魏熙之辉煌,愿其未来更加昌。信竞之路无止境,魏熙必将创辉煌。

AFTERNOON

zhx p195,一眼感觉这套题特别简单,但是是真的糖丸了)

做完前两题就发现事情不简单,期望:100 + 100 + 0 + 0 = 200 。

结果 B 挂成 \(10pts\) 了,糖丸了

EVENING

被妈妈拉去公司团建,什么活动什么讲话的不知道,但是米兰西典确实好吃😋,但是胃口小好多东西塞不下了😭。

回家之后就是继续写作业……无语了作业甚至还有 \(20\) 多张卷子,直接肝到两点。

DAY 6

MORNING

补题……(没什么好说的因为昨天下午真的糖丸了)。

中午又吃了 3WiCH,仙品,感谢 zzy 的推荐🥰。

AFTERNOON

嘶——我昨天下午干啥来着……?(10.7 补日记 の 疑惑)。

好像是做了一套炼石计划的模拟题但是抱零了……

总之就是,,很摆烂的一个下午。

EVENING

没啥好说的,写作业呗)

DAY 7

MORNING

zhx p207 不会啊不会啊我真的是纯 fw 啊 qwq

AFTERNOON

表面上在做梦熊

实际上在担心自己的 whk

EVENING

赶回学校上晚自习开班会

并未开始的假期结束了

posted @ 2024-10-02 23:54  Trubiacy  阅读(29)  评论(0编辑  收藏  举报