2023 CCF非专业级软件能力认证
CSP-J/S 2023第二轮认证
提高级
时间:2023年10月21日14:30∼18:30
题目名称 密码锁 消消乐 结构体 种树
题目类型 传统型 传统型 传统型 传统型
目录 lock game struct tree
可执行文件名 lock game struct tree
输入文件名 lock.in game.in struct.in tree.in
输出文件名 lock.out game.out struct.out tree.out
每个测试点时限 1.0秒 1.0秒 1.0秒 1.0秒
内存限制 512 MiB 512 MiB 512 MiB 512 MiB
测试点数目 10 20 20 20
测试点是否等分 是 是 是 是
提交源程序文件名
对于C++语言 lock.cpp game.cpp struct.cpp tree.cpp
编译选项
对于C++语言 ‐O2 ‐std=c++14 ‐static
.
注
.
意
.
事
.
项(
.
请
.
仔
.
细
.
阅
.
读)
1.文件名(程序名和输入输出文件名)必须使用英文小写。
2.C/C++中函数main()的返回值类型必须是 int,程序正常结束时的返回值必须
是0。
3.提交的程序代码文件的放置位置请参考各省的具体要求。
4.因违反以上三点而出现的错误或问题,申诉时一律不予受理。
5.若无特殊说明,结果的比较方式为全文比较(过滤行末空格及文末回车)。
6.选手提交的程序源文件必须不大于 100KB。
7.程序可使用的栈空间内存限制与题目的内存限制一致。
8.全国统一评测时采用的机器配置为: Intel(R) Core(TM) i7-8700K CPU @3.70GHz,
内存32GB。上述时限以此配置为准。
9.只提供Linux格式附加样例文件。
10.评测在当前最新公布的 NOI Linux下进行,各语言的编译器版本以此为准。
2023 CCF非专业级软件能力认证 CSP-J/S 2023第二轮认证 提高级 密码锁( lock)
密码锁( lock)
【题目描述】
小Y有一把五个拨圈的密码锁。如图所示,每个拨圈上是从 0到9的数字。每个
拨圈都是从 0到9的循环,即 9拨动一个位置后可以变成 0或8,
图1:密码锁
因为校园里比较安全,小 Y采用的锁车方式是:从正确密码开始,随机转动密码锁
仅一次;每次都是以某个幅度仅转动一个拨圈或者同时转动两个相邻的拨圈。
当小Y选择同时转动两个相邻拨圈时,两个拨圈转动的幅度相同,即小 Y可以将
密码锁从 0 0 1 1 5转成1 1 1 1 5,但不会转成 1 2 1 1 5。
时间久了,小 Y也担心这么锁车的安全性,所以小 Y记下了自己锁车后密码锁的
n个状态,注意这 n个状态都不是正确密码。
为了检验这么锁车的安全性,小 Y有多少种可能的正确密码,使得每个正确密码
都能够按照他所采用的锁车方式产生锁车后密码锁的全部 n个状态。
【输入格式】
从文件lock.in
2023 CSP-S2,2023年信息学奥赛CSP-S2提高级复赛C++真题