NOIP 2021 游记

一年一度的 NOIP 到了,这次我不在原来的曹杨二中考试,而是在张江集团考。这个考点不像曹杨二中一样要在外面等,而是到了就可以进去了。但是题目和考场体验截然不同。

T1

这次第一题我就不会做。我首先想到了暴力解法,找出所有的含有 777 的数字,并将它以及它的倍数全都设为不合法,然后暴力判断。

在我后面的题目都做不出来后,我又回到了这题,想到了若n=10k+1a+7×10k+bn=10^{k+1}a+7\times 10^k+bn=10k+1a+7×10k+b就可以直接跳到10k+1a+8×10k=10k(⌊n10k⌋+1)10^{k+1}a+8\times 10^k=10^k(\left\lfloor \frac{n}{10^k}\right \rfloor+1)10k+1a+8×10k=10k(10kn+1)然后我就用链表写了另一种解法,不知道会不会快一点,这题我大约能得50~70分

T2

这题基本看不懂,不过我也口胡出了不知道是否正确的暴力解法:先枚举所有 n≤S≤n×2mn\leq S \leq n\times 2^mnSn×2mSSS 的二进制数不超过 kkk,然后对于每一个已经枚举到的 SSS,将其二进制的第 iii 位设为 aia_iai,然后不断地做ai→ai−1,ai−1→ai−1+2a_i\rightarrow a_i-1, a_{i-1}\rightarrow a_{i-1}+2aiai1,ai1ai1+2直至 aaa 的总和为 nnn,然后这种情况的答案为n!∏i=0mai!∏i=0mviai\frac{n!}{\prod\limits_{i=0}^{m}a_i!}\prod\limits_{i=0}^{m}{v_i}^{a_i}i=0mai!n!i=0mviai最终将所有的合法答案相加即可。这题我大约能得 0~20分

T3

又是方差,这次我先直接 DFS 暴力,然后试着根据题目给出的方差公式推式子
D=1n∑i=1n(ai−a‾)2n2D=n∑i=1n(ai−a‾)2=n∑i=1n(ai2−2a‾ai+a‾2)=n∑i=1nai2−n∑i=1n2a‾ai+n∑i=1na‾2 \begin{aligned} D &= \frac{1}{n}\sum\limits_{i=1}^{n}(a_i-\overline{a})^2\\ n^2D&= n\sum\limits_{i=1}^{n}(a_i-\overline{a})^2\\ &= n\sum\limits_{i=1}^{n}(a_i^2-2\overline{a}a_i+\overline{a}^2)\\ &= n\sum\limits_{i=1}^{n}a_i^2-n\sum\limits_{i=1}^{n}2\overline{a}a_i+n\sum\limits_{i=1}^{n}\overline{a}^2\\ \end{aligned} Dn2D=n1i=1n(aia)2=ni=1n(aia)2=ni=1n(ai22aai+a2)=ni=1nai2ni=1n2aai+ni=1na2S=∑i=1naiS=\sum\limits_{i=1}^{n}a_iS=i=1naiT=∑i=1nai2T=\sum\limits_{i=1}^{n}a_i^2T=i=1nai2,则
n2D=nT−∑i=1n2Sai+n2a‾2=nT−2S∑i=1nai+S2=nT−2S2+S2=nT−S2 \begin{aligned} n^2D&=nT-\sum\limits_{i=1}^{n}2Sa_i+n^2\overline{a}^2\\ &=nT-2S\sum\limits_{i=1}^{n}a_i+S^2\\ &=nT-2S^2+S^2\\ &=nT-S^2 \end{aligned} n2D=nTi=1n2Sai+n2a2=nT2Si=1nai+S2=nT2S2+S2=nTS2
aia_iai 变成 ai+1+ai−1−aia_{i+1}+a_{i-1}-a_iai+1+ai1ai
ΔS=ai+1+ai−1−2ai\Delta S=a_{i+1}+a_{i-1}-2a_iΔS=ai+1+ai12aiΔT=(ai+1+ai−1−ai)2−ai2=ΔS(S+ai)\begin{aligned} \Delta T &=(a_{i+1}+a_{i-1}-a_i)^2-a_i^2\\ &= \Delta S(S+a_i) \end{aligned}ΔT=(ai+1+ai1ai)2ai2=ΔS(S+ai)n2ΔD=n2D′−n2D=n2(nT′−S′2)−n2(nT−S2)=n2[n(T+ΔT)−(S+ΔS)2]−n2(nT−S2)=...\begin{aligned} n^2\Delta D&= n^2D'-n^2D\\ &= n^2(nT'-S'^2)-n^2(nT-S^2)\\ &= n^2\left[n(T+\Delta T)-(S+\Delta S)^2\right]-n^2(nT-S^2)\\ &= ... \end{aligned} n2ΔD=n2Dn2D=n2(nTS2)n2(nTS2)=n2[n(T+ΔT)(S+ΔS)2]n2(nTS2)=...
后来实在推不动了,并且什么结论也得不到。

在考试结束后听别人说是转成差分后那个操作相当于交换差分数组中的两个元素。

T4

看完题目后觉得这题我可能至少要花 2 个小时以上,并且有可能写错,于是我就放弃了。

总结

这次比赛难度比去年大很多,我还是基本什么学过的知识都用不到,不过我感觉我已经将我能拿到的所有分数全都拿到了,只要不失误应该会有66~106分,而去年我只有60分。

但愿不挂分。

题号预计得分实际得分
T150~7050
T20~200
T31212
T400
总分50~9062
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值