2024.10 训练记录

训练记录

10.9

4+D16 T2+10D4 T4

另外:

n 个点的有标号无向连通图个数 n1000

trick: 连通图个数 = 总数 - 不连通图的个数

n 个点的图最多有 n(n1)2 条边,每条边可以选或者不选,共计 2n(n1)2 种方案

连通的图,发现可以由一个连通的包含一个固定节点的有 i 个节点的子图和一个与之不连通的任意的子图构成。前者可以用之前的数据(即fi),而后者因为剩下共计 ni 个节点,(ni)(ni1)2 条边,每条边可以选或者不选,共计 2(ni)(ni1)2 种方案,前者选择 i 个节点的方案有 (n1i1)

所以
fn=2n(n1)2i=1n1(n1i1)×2(ni)(ni1)2×fi

O(n2)

10.10

D20 T1 T3+luoguP4135+  

P4135 tzc_wk

10.11

D15 T3+D20 T2

超级简要记录一下 easy sum

n 个点 (ai,bi), 求每个点走到 (0,k) (0k<n) 的方案数

为了方便 翻转坐标轴 (ai,nbi1)

分块
[xi](11x)l+B 组合意义为 (0,0) 走到 (l+B,i)
n 次前缀和
二项式反演
(1x)m=i=0m(mi)(1)ixi
NTT

实测块大小 B=3000 能过

最近做了太多 NTT 的题,万一真让我学会了?

10.12

csp7连

应该说没挂多少?虽然被 T3 区分了。T1T2是两个不用脑子闭眼过的签到,T3 想到缩点了来着,后面没有想下去,非 0 环太坑人了,高达 0 分的暴力。T4 24 分挂成 4 分,如果有空补个简要一点的题解。

10.13

noip10连

T1挂了!!!!T1!!数字打一半交上去了草!!100挂成30!T1是个简单的 dp,T2过了,T3暴力没想仔细写一半没写了(我错了),T4题面看不懂,交了第一个测试点的答案,但是挂了。

先这样。

10.14

20D1 T1 T2+7D6 T3+10D6 T3+luoguP2514

今天20连Day1

估分 100 + 40 + 20 + 30 = 190

实际 100 + 35 + 20 + 10 = 165

T2 T4 小细节挂了 幸好没有捆包,T3本来能写更高的暴力,懒了(错了错了),下分了。老老实实打暴力才能赢啊

明天要证明自己 我要上分。

10.15

20连D2

估分 100 + 100 + 45 + 32 = 277

实际 100 + 20 + 32 + 20 = 172

T2 特别心痛,首先正解被卡常了,赛后卡一卡就过了,其次我拼了一个 20 暴力上去,但是没想到是 0 分暴力,于是我死了。没算好复杂度。气死我了,评测机波动 80 -> 20, 当然还加一个快读比较烂的buff。换一个快读秒过。我真的生气了。都怪快读,垃圾正瑞评测机。重测了一下直接 0 分了。

T3 写的 n2 所以预计得分 45,但是交完发现其实没道理 拿不了几分,抱着完全挂掉的心态在等,最后居然有 32 分,谢谢。

T4!赛后(but没改数据前)我的n2 暴力可以拿 60 ,但是我把 n>2000 给特判掉了,加上 op=3failed 判挂了,所以只拿到了 20。感谢孙哥卡掉 n2 ,

又下分了,证明自己这件事等明天吧。

20D2 T1 T2

10.16

(upd 10.17:我刚刚更新的时候才发现应该是10.16,一直以为昨天是15号啊啊,)

昨天没补题 心理状况出了大问题 今天->努力补题.gif

D3

估分 100 + 100 + 25 + 20 = 245

实际 100 + 90 + 25 + 20 = 235

小上了一点分

T2二分边界开小了,算错了

20D3 T1 T2+D1 T2 T3 T4 五题 还凑合吧

10.17

D4

估分 20 + 100 + 10 + 0 = 130

实际 0 + 100 + 10 + 0 = 110

今天是魔怔场。一开始 T2 完全不会 只能会打 25 分暴力,后面有人在机房喊网络流网络流,我想了一会发现会了。唉真的什么都不会,

T1 国家队作业    T3 集训队互测    T4

又下分了 周末能上点吧/?

不好评价 补题

20D4 T1 T2

10.18

终于不打比赛了。

后缀数组全忘了 复习一下:
倍增思想 往后第t关键字排序

20D3 T3+D2 T3 最近补题有点少,剩下的好难。

数学考了56(雾

10.19

csp7连

估分 100 + 100 + 10 + 0 = 210

实际 100 + 100 + 10 + 0 = 210

没挂 嘻嘻,但是本来写的 20 分暴力,初始化没加一挂了,爽,,

T4 题面看上去就很恶心 一点都不想看,省流就是打了1小时24分就开始摸鱼了(但其实最后一个小时在写暴力来着,T4 暴力也写了只不过挂了就没交,

上分了(怎么老打成上坟 怒

10.20

noip10连

估分 100 + 100 + 0 + 0 = 200

实际 100 + 100 + 0 + 0 = 200

不过 赛后 T2 被 hack 了,所以实际只有 97 。check 写挂了。

但是因为是大型原题场,所以开 unr 了??!!

很生气 wmh 大神喊两句就 unr 了,所谓的“实力至上”是这样的,本来我能上 13 分,怒闯历史最高 rating。我讨厌他,

顺便记录一下原题 t2~t4 qoj#9427 qoj#9411 zr#2771(不是哥们怎么还有去年10连题,????

本周还差一题 我会抓紧补的!

10.21

20连D5

估分 100 + 100 + 50 + 15 = 265

实际 100 + 100 + 50 + 15 = 265

没挂,上分了 历史最高分。

话说我昨天把 10连D7T2 给补了,刚刚发现又被 hack了,这么命运悲惨。又重写了哈哈。

20D5 T1 T2 + D4 T2 T3

10.22

20连D6

估分 15 + 100 + 25 + 20 = 160

实际 40 + 100 + 25 + 20 = 185

T1真不会 就想到相邻 x 最大 后面就不到了。写了的 n3 暴力,跑过了 2e3,而且只要 31ms.想不动。太危了。

险险上分

鲜花:
这个sbwmh 一打不好就在群里吱哇乱叫 叫叫叫叫nm啊(选自博主qq聊天记录。
纯骂人 没有别的意思。吵死了。就是你们想的那个wmh,著名选手wmh)真差不多得了

昨晚写了 7连D7T3 wa了没调完,今天调

20D6 T1 T2 + 10D7 T4

10.23

20连D7

估分 100 + 5 + 44 + 54 = 203

实际 100 + 0 + 21 + 18 = 139

T2 有点太难了 会不了一点,写的 dfs 5分暴力,调了好久还,结果挂了。
T3 写的 nq 暴力 实际上换个快读开个 ofast 直接飞升 44。
T4 写的 nqlogn 二分 好像 5e3 确实不太好过,subtask 最后 2 个点没过,但同上换快读 54.

下了22,明天最后一场了。加加油。

20D7 T1 T3

10.24

20连D8

估分 100 + 0 + 0 + 10 = 110

实际 10 + 0 + 0 + 10 = 20

T1 多取了一次max T3暴力没调出来
下分下完了 我这么多天费劲上了 1770,两天掉到 1583,你说这事整的。。真爽。加油加油

20D8 T1

10.25

一给马斯

看了很多图论的概念。哈哈。等会再看看图论算法 set用法 kmp ac自动机 矩乘 哈希

注 哈希

#define hshmod 10000019
#define ull unsigned long long

unordered_map<int,bool>mp;

ull hsh=0;
for(int k=1;k<=cnt;k++){
    hsh*=hshmod;
    hsh+=b[k];
}
if(mp[hsh]){
    return ;
}
mp[hsh]=1;

就先这么写吧

线性逆元

inv[1]=1;
for(int i=1;i<=n;i++){
    if(i>1)inv[i]=(mod-mod/i)*inv[mod%i]%mod;
}

等会再看看链表

还有树 平衡树线段树 字典树笛卡尔树

oiwiki

10.26

左转反思。哦。报意思。我加密了。

10.27

noip10连

估分 30 + 40 + 0 + 20 = 90

实际 10 + 40 + 0 + 20 = 70

这场难 都一百多不到一百。上来就来了一个严重博弈,想半天没写出来,我有 20 分多判了一些条件,直接 wa 掉了。

把 T1 T2 补了

10D8 T1 T2

10.28

20连D9

估分 100 + 0 + 20 + 20 = 140

实际 80 + 0 + 0 + 20 = 70

特判判错了。

20D9 T1 + D8 T2 T3 + 10D8 T2

看上去好多其实只有 4 题。

10.29

20连D10

估分 100 + 100 + 45 + 20 = 265

实际 100 + 100 + 0 + 20 = 220

暴力怎么又挂了。鉴定为题面太shi导致的(甩锅.jpg。

使劲补题。

20D10 T1 T2 T3 + D6 T3

10.30

20连D11

估分 100 + 100 + 0 + 30 = 230

实际 100 + 0 + 0 + 0 = 100

T1还算简单但是我居然两个小时才会。bfs + dfs 就能过了,数据好像没造满。

T2 也花了两个小时,各种想到的做法都写了一遍。第一个贪心,后面发现不对;第二个是二分找最长段,看左右每次都需要的数,好多人写了这个,过了样例没过终测,我写了但是没过大样例,答案和第一个贪心一样是 239,写史了;第三个也是二分,不会证明正确性但是能过大样例,回去测小样例发现没过,最后十五分钟,,发现前缀和顺序算错了,迅速改过来,在倒数 3min 的时候交上去了,手都是抖的。

T2 挂没了。原因是没有记录每一个左端点,导致出现 i-0=mxlen 的情况 ,然后就si了。si的最惨的一次。我再也不懒了。

10.31

20连D12

估分 100 + 0 + 0 + 0 = 100

实际 100 + 50 + 0 + 0 = 150

t1推了半天式子。就是把 第一个式子转化成第二种形式,让 i,j 独立。

(sum[n](sum[j1]sum[i1]))×(ji)<=(sum[j1]sum[i1])×(nj+i)n×sum[j1]j×sum[n]>=n×sum[i1]i×sum[n]

然后就是直接维护区间最小值,写了一个st表。

大家做法都比我简洁好多,都用不到区间最小值。

t2 一眼反悔贪心,但是这题我不会写。赛时写 50 分暴力 dp 但是没过大样例。从 718 调到 716,最后调不动了直接放弃交上去了,假正解写挂了()。结果终测出来居然有 50 分。完全没想到,终测数据比大样例还弱吗?赛后交了一下原题发现 40 个点也只有个位数个点是 WA,其他都过了。太神秘了。

t3 看到 access 以为 LCT,于是看都没看。虽然上周五赵老师讲了一点,但是还是不会。

t4 写的 dfs 暴力,没过。暴力都写不对了现在。

记一个:

反悔贪心

主要思想:即通过(大根堆、小根堆)来维护当前贪心策略的最优解,若发现最优解不对,就退回上一步,更新最优解。

由于堆的性质,使得堆的首数据一定是最优的,这就可以实现快速更新最优解

今天这个 t2 首先考虑取维护 b 值的小根堆,这个如果要用就代表着这个要替换那 k 个用了优惠券的,那么通过贪心的思路可以想到肯定是取优惠最少的进行替换,那么如果将这两个替换的花费就为:b 值最小的+ a 和 b 的差值最小的。也就是说,我们不仅需要买这个东西,我们还需要补上这个东西替换的那个东西的差价。

然后我们考虑取维护 a 值的小根堆,这个非常显然就是 a 值最小的那一个作为花费。

那么我们比较两种取值的花费,那个小就取哪个即可。代码

原题 LGP3045

————

October >>>

十月结束啦!🔚

居然坚持写了这么久,第一次啊。希望以后能坚持。有六千字吧。最后两天没写做了哪些题 反正就是 T1 T2 和之前的 T3 T4。懒得记了。

posted @   Slayer-WT!!!!!!!!  阅读(17)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示