2023.11.2联赛总结

T 1 T1 T1求一个最小的 n n n,满足 k ∣ n 2 k \mid n^2 kn2 k ∤ n k \nmid n kn,如果不存在则输出 − 1 -1 1

其中 1 < k < 1 0 12 11<k<1012

这玩意直接质因数分解就秒了,过了大样例就跑路去看 T 2 T_2 T2

T 2 T_2 T2给出一个数列,其中相邻的两项如果互质,那么它们的位置就可以互换,求通过若干次操作后可以得到多少种不同的序列。

其中 2 ≤ n ≤ 1 0 5 , 1 ≤ a i ≤ 9 2 \leq n \leq 10^5,1 \leq a_i \leq 9 2n105,1ai9

暴力分有 30 30 30分,本来想打个 d f s dfs dfs,只要满足条件就换,但是后面的操作会影响前面的操作,所以做法假了,于是我就跑路去看 T 3 T_3 T3了。

T 3 T_3 T3给出 n n n条龙的力量值 a i a_i ai,以及将它们力量升高、减小的代价 a , b a,b a,b

其中 1 ≤ n ≤ 1 0 5 , 1 ≤ a , b ≤ 1 0 4 , 1 ≤ a i ≤ 1 0 9 1 \leq n \leq 10^5,1 \leq a,b \leq 10^4,1\leq a_i \leq 10^9 1n105,1a,b104,1ai109

n n n次询问,每次求使 1 → i 1 \to i 1i中每条龙力量值相等时所需的最小代价。

我当时觉得对于每次询问,枚举所有可能的力量值,取最小代价即可,

但是我想着先看一下 T 4 T_4 T4,看 T 4 T_4 T4会不会更好打一些,结果太上头了,暴力没打。

T 4 T_4 T4给出一棵树,树的大小不超过 1 0 6 10^6 106,每两个点之间路径的权值为 2 d i s 2^{dis} 2dis d i s dis dis为路径的长度。

q q q次询问,给出 u , v u,v u,v,求所有经过 u , v u,v u,v这两个点的简单路径的长度的和。

这种套路我也见过一两次,所以很快就知道如何去计算贡献。答案有两种情况,第一种是它们的 l c a lca lca不是其中任意一个点,这个非常好维护。但 l c a lca lca为其中一个点的情况有点难办,于是我花了 1 1 1个小时推出了解决方案,而这个时候比赛只剩下半个小时了,我迅速的将这种情况写完并一发过了样例,比赛时间仅剩下几分钟,我检查了下第一题比赛就结束了。

赛后 T 4 T_4 T4挂到了暴力分,拿到数据后才发现取模时,虽然加了一次模数,但还是爆成负数了,改了那个地方就 A A A了。不知道为什么,我用了树剖求 l c a lca lca,跑的还挺快的,比他们 t a r j i n tarjin tarjin、倍增要快。

总结:比赛时,要先把暴力打完,同时还得自己造一些极限数据,防止被下发的大数据坑了。

你可能感兴趣的:(赛后总结,赛后总结)