NOIP 2021 游记

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

T1

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

在我后面的题目都做不出来后,我又回到了这题,想到了若 n = 1 0 k + 1 a + 7 × 1 0 k + b n=10^{k+1}a+7\times 10^k+b n=10k+1a+7×10k+b就可以直接跳到 1 0 k + 1 a + 8 × 1 0 k = 1 0 k ( ⌊ n 1 0 k ⌋ + 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 × 2 m n\leq S \leq n\times 2^m nSn×2m S S S 的二进制数不超过 k k k,然后对于每一个已经枚举到的 S S S,将其二进制的第 i i i 位设为 a i a_i ai,然后不断地做 a i → a i − 1 , a i − 1 → a i − 1 + 2 a_i\rightarrow a_i-1, a_{i-1}\rightarrow a_{i-1}+2 aiai1,ai1ai1+2直至 a a a 的总和为 n n n,然后这种情况的答案为 n ! ∏ i = 0 m a i ! ∏ i = 0 m v i a i \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 = 1 n ∑ i = 1 n ( a i − a ‾ ) 2 n 2 D = n ∑ i = 1 n ( a i − a ‾ ) 2 = n ∑ i = 1 n ( a i 2 − 2 a ‾ a i + a ‾ 2 ) = n ∑ i = 1 n a i 2 − n ∑ i = 1 n 2 a ‾ a i + n ∑ i = 1 n a ‾ 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=1na2 S = ∑ i = 1 n a i S=\sum\limits_{i=1}^{n}a_i S=i=1nai T = ∑ i = 1 n a i 2 T=\sum\limits_{i=1}^{n}a_i^2 T=i=1nai2,则
n 2 D = n T − ∑ i = 1 n 2 S a i + n 2 a ‾ 2 = n T − 2 S ∑ i = 1 n a i + S 2 = n T − 2 S 2 + S 2 = n T − S 2 \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
a i a_i ai 变成 a i + 1 + a i − 1 − a i a_{i+1}+a_{i-1}-a_i ai+1+ai1ai
Δ S = a i + 1 + a i − 1 − 2 a i \Delta S=a_{i+1}+a_{i-1}-2a_i ΔS=ai+1+ai12ai Δ T = ( a i + 1 + a i − 1 − a i ) 2 − a i 2 = Δ S ( S + a i ) \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) n 2 Δ D = n 2 D ′ − n 2 D = n 2 ( n T ′ − S ′ 2 ) − n 2 ( n T − S 2 ) = n 2 [ n ( T + Δ T ) − ( S + Δ S ) 2 ] − n 2 ( n T − S 2 ) = . . . \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
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
NOIP(全国青少年信息学奥林匹克竞赛)是中国举办的一项顶尖竞赛,旨在选拔和培养青少年信息学人才。CSP(计算机科学与编程竞赛)是NOIP的初赛,包括提高组和普及组两个不同难度的竞赛。 从1995年到2021年,CSP提高组复赛试题持续不断地推陈出新。试题的难度和内容与时俱进,反映了信息科技和计算机学科的发展趋势。 这些试题涵盖了计算机科学与编程的各个领域,如数据结构、算法设计与分析、图论、动态规划等。这些题目不仅要求考生熟悉编程语言,还需要考生具备分析问题、设计算法、优化程序的能力。因此,参加CSP的考生需要有扎实的计算机基础知识和编程技巧。 CSP试题的设计目标是培养学生的创新思维、动手能力和问题解决能力。试题往往是实际问题的抽象化,考生需要将问题拆解、建模,并设计出适用的算法和程序来解决。这种综合应用的能力培养能够提高学生的实践能力和创新能力,为他们今后的学习和工作打下坚实的基础。 此外,CSP试题还注重培养学生的团队合作精神和竞技意识。复赛试题通常要求考生在限定时间内完成,这要求考生在有限的时间内高效地协作和解决问题。 总之,NOIP CSP提高组复赛试题的不断更新和提高,以及其注重培养学生的综合能力,使得参加这项竞赛的学生能够更好地理解和应用计算机科学知识,为他们日后的学习和发展打下良好的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值