洛谷 NOIP 2023 模拟赛 个人总结

种树

n n n 个数,和 k k k,每次可以把 x ( x ∣ k ) x(x\mid k) x(xk) 乘到一个数,然后 k ← k x k\gets\frac kx kxk,求所有数的约数个数乘积的最大值。 n , k , a i ≤ 1 0 4 n,k,a_i\le10^4 n,k,ai104
一开始考虑分解 a i a_i ai,对每个质因子单独考虑,发现每次加在质因子最少的那个数最优,于是用了个优先队列维护这个数,大概8点40分写完过了大样例,然后静态检查了5min,就去看T2了。

汪了个汪

棋盘上有 n n n 行,第 i i i i i i 个格子。你要在格子填 1 ∼ n 1\sim n 1n,满足:

  • 每行第一个数互不相同
  • 所有在行上相邻的两个数所组成的无序对互不相同
  • 每行的数互不相同

n ≤ 4000 n\le4000 n4000

看到无序对要挤满整个棋盘,感觉条件很苛刻,又尝试构造无果,就打了 dfs 暴力去找规律,感觉构造的方案中可能有对称性,但是对称性不够,也没看出什么规律,去看 T3。

题解的构造方法是 x , x + 1 , x − 1 , x + 2 , x − 2 , … x,x+1,x-1,x+2,x-2,\dots x,x+1,x1,x+2,x2,

挑战 NPC IV

定义 f ( i ) = 1 + log ⁡ 2 ( lowbit ⁡ ( i ) ) f(i)=1+\log_2(\operatorname{lowbit}(i)) f(i)=1+log2(lowbit(i)),对于排列 p p p,它的优美度为 ∑ 1 ≤ i ≤ j ≤ n ∑ k = i j f ( p k ) \sum_{1\le i\le j\le n}\sum\limits_{k=i}^jf(p_k) 1ijnk=ijf(pk)。对于 n ! n! n! 个本质不同的排列,求第 k k k 小的优美度。 n ≤ 1 0 18 , k ≤ min ⁡ ( 1 0 18 , n ! ) n\le10^{18},k\le\min(10^{18},n!) n1018,kmin(1018,n!)

没什么思路,发现优美度是 ∑ i = 1 n f ( p i ) i ( n − i + 1 ) \sum\limits_{i=1}^nf(p_i)i(n-i+1) i=1nf(pi)i(ni+1),就贪心把 f f f 最小的与 i ( n − i + 1 ) i(n-i+1) i(ni+1) 最大的放在一起暴力。

题解用了个拼盘, n ≥ 29 n\ge29 n29 时,第 k k k 小等价与最小。而 n < 29 n<29 n<29,用 d p dp dp 求方案数。

四暗刻单骑

Alice 和 Bob 各有一个数 x , y x,y x,y,牌堆有 n n n 个数,Alice 和 Bob 轮流取牌堆上的数,然后选择手上的一个数打出,若一方的两个数相同获胜, m m m 次询问,问当取 [ l , r ] [l,r] [l,r] 当牌堆时,谁会赢。 n , m , k ≤ 2 × 1 0 5 n,m,k\le2\times10^5 n,m,k2×105

看了数据范围,想了20pts 的 dp 开始打,打了1h过了大样例,又手造了小数据,还有 x = y x=y x=y 4 p t s 4pts 4pts,打了分块去维护。后面就没思路了,时间也不多了,开始检查。

题解是数据结构不会。

总结

期望得分:100+10+12+24=146pts

实际得分:64+10+12+20=106pts

T1挂分了,原因是分解质因数时,下标超过了最大的质数个数,枚举的 p i p_i pi 变成 0 0 0,模 0 0 0 RE了。这次算是长了个教训,解决方法是筛质数的范围开大一点或每次限制每个下标的范围。T2,T3 都不能深入分析问题,其实分析出 n ≥ 29 n\ge29 n29,答案求最小值是不难的。

总结:这套题感觉与NOIP的风格很像,题目有质量。在正式考试中要严格执行考试策略,写完一道题不论难度都要打对拍,造大小极端数据,后面骗多少部分分都比不上会的题不挂分。希望教练多放这种风格的题目。

你可能感兴趣的:(学习方法)