[NOI蓝图杯] 八月月赛-全真模拟赛初赛
整体评价:难度适中
选择题
- 推荐访问 noi官网
- 常识题,选C
- 显然题面在教我们怎么求gcd,选A
- 既然A,B两个小朋友必须相邻,我们就把他们粘在一块,这样总方案数就是 种。再求出C,D小朋友必须相邻的方案数,一共有 种(为什么乘 呢?读者可以想一想),最后相减,。
- 先每个电脑各买2台,还剩16000元,再使用隔板法,答案为 。
- 为什么B是错的?因为我们可以
push(x),pop(x),push(y),pop(y)
。答案选C - 正数的补码=原码!!选D!!
- 推荐做一下这道题:放苹果 。答案选B
- 模拟递归过程,选D
- 基础题,选A
- 暴力计算发现选D
- n/2+n/4+n/8+...+1 = n,所以选C
- 二叉排序树要求左子树小于根节点, 右子树大于根节点, 根据后序遍历, 可构造下图,故选D
- C是不可能的,因为不符合bfs的原理
- 2022年处于八运,那么2002年就肯定处于七运,1922年处于三运,选B
程序题
Task1
可以看出程序的功能就是输入年月日,输出这一天是星期几。在主函数里计算的 表示 从Y年12月31日到输入日期经过了多少天,由此可见 表示 Y年12月31日是星期base。知道了这些,后面的题就都不难啦~
- 16~21参考答案:ABABCC
Task2
可以看出程序维护了一个双向链表,每一次操作会给一个数 ,如果 未被删除,就删除 ,并输出未被删除的元素里小于 的最大值与大于 的最小值,如果无法输出就不输出。下面是难题讲解:
23题:执行完第14行后,a[0] = b[0]
24题:当 时可能会输出空行
27题:互换20与21行效果不变,因为链表删除操作不用考虑删除顺序。
- 22~27参考答案:BBBABC
Task3
暴力算出 数组和 数组,模拟即可。
33题:当 时,循环只会执行一次,a[n][1]*c[n-2][0]=a[n][1]*1=n
- 28~33参考答案:ABACBA
Task4
这是一个大型模拟程序,只需要根据题意慢慢分析即可。注意这个程序的下标是从 开始的,所以要谨慎一些(被奇怪下标绕晕的我
- 34~38参考答案:CADBA
Task5
尺取法模板。根据程序猜出,cnt[i]
表示还有 cnt[i]
个 没有取到。而且根据 if(check()) ans += ...;
确定下来 check()
函数是用来检查当前区间是否合法的函数,所以39题选C。接下来是一个枚举左端点,调整右端点的尺取法模板,仅需注意 cnt[i]
的特殊含义即可。
- 39~43参考答案:CABAC
OK!恭喜你解决了一场CSP-J的初赛!
The contest is a flexible time contest. You need to complete the contest within a specified time after you attended.
- Status
- Done
- Rule
- OI
- Problem
- 1
- Start at
- 2023-8-4 12:00
- End at
- 2023-8-6 22:00
- Duration
- 2 hour(s)
- Host
- Partic.
- 67