A3089 | 奇怪的机器
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
时间限制:1000ms
内存限制:128MB
有一个包含 $N$ 个转轴的机器,其中第 $i$ 个转轴上有一个符号排列,由一个长度为 $10$ 的字符串 $S_i$ 表示,该字符串恰好包含字符
0, 1, $\ldots$, 9 各一个。机器启动后,所有转轴开始旋转;每个转轴都有一个对应的按钮。对于任意非负整数 $t$,小码君可以在转轴开始旋转 $t$ 秒后,选择按下其中一个按钮(或者什么都不做)。
如果在旋转开始 $t$ 秒后按下第 $i$ 个转轴的按钮,则第 $i$ 个转轴将停止并显示 $S_i$ 的第 $((t\bmod{10})+1)$ 个字符。
这里,$t \bmod{10}$ 表示 $t$ 除以 $10$ 的余数。
小码君想让所有转轴停止并显示相同的字符。
计算出机器启动后达到此目标所需的最少秒数。
$\large{数据范围}$
- $2 \leq N \leq 100$
- $N$ 是一个整数。
- $S_i$ 是一个长度为 $10$ 的字符串。且仅包含字符
0, 1, $\ldots$, 9,并且每个字符出现恰好出现一次。输入格式
对于每个测试文件输入格式如下:
$\tt{S_1}$
$\tt{S_2}$
$\tt{\vdots}$
$\tt{S_N}$
$\tt{N}$
$\tt{S_1}$
$\tt{S_2}$
$\tt{\vdots}$
$\tt{S_N}$
输出格式
输出机器启动后实现小码君的目标所需的最少秒数。
输入输出样例
输入 #1
3 1937458062 8124690357 2385760149
输出 #1
6
输入 #2
5 0123456789 0123456789 0123456789 0123456789 0123456789
输出 #2
40
样例 $1$:
小码君可以在旋转开始后的 $6$ 秒内让所有转轴都显示
- 旋转开始 $0$ 秒后,按下第 $2$ 个转轴的按钮,使其停止并显示 $S_2$ 的第 $((0\bmod{10})+1=1)$ 个字符
- 旋转开始 $2$ 秒后,按下第 $3$ 个转轴的按钮,使其停止并显示 $S_3$ 的第 $((2\bmod{10})+1=3)$ 个字符
- 旋转开始 $6$ 秒后,按下第 $1$ 个转轴的按钮,使其停止并显示 $S_1$ 的第 $((6\bmod{10})+1=7)$ 个字符
没有办法让所有转轴在 $5$ 秒或更短的时间内显示相同的字符,所以答案是 $6$ 。
样例 $2$:
小码君可以在旋转开始后的 $40$ 秒内让所有转轴都显示
- 旋转开始 $0$ 秒后,按下第 $1$ 个转轴的按钮,使其停止并显示 $S_1$ 的第 $((0\bmod{10})+1=1)$ 个字符
- 旋转开始 $10$ 秒后,按下第 $2$ 个转轴的按钮,使其停止并显示 $S_2$ 的第 $((10\bmod{10})+1=1)$ 个字符
- 旋转开始 $20$ 秒后,按下第 $3$ 个转轴的按钮,使其停止并显示 $S_3$ 的第 $((20\bmod{10})+1=1)$ 个字符
- 旋转开始 $30$ 秒后,按下第 $4$ 个转轴的按钮,使其停止并显示 $S_4$ 的第 $((30\bmod{10})+1=1)$ 个字符
- 旋转开始 $40$ 秒后,按下第 $5$ 个转轴的按钮,使其停止并显示 $S_5$ 的第 $((40\bmod{10})+1=1)$ 个字符
没有办法让所有转轴在 $39$ 秒或更短的时间内显示相同的字符,所以答案是 $40$ 。
小码君可以在旋转开始后的 $6$ 秒内让所有转轴都显示
8,方法如下:- 旋转开始 $0$ 秒后,按下第 $2$ 个转轴的按钮,使其停止并显示 $S_2$ 的第 $((0\bmod{10})+1=1)$ 个字符
8。- 旋转开始 $2$ 秒后,按下第 $3$ 个转轴的按钮,使其停止并显示 $S_3$ 的第 $((2\bmod{10})+1=3)$ 个字符
8。- 旋转开始 $6$ 秒后,按下第 $1$ 个转轴的按钮,使其停止并显示 $S_1$ 的第 $((6\bmod{10})+1=7)$ 个字符
8。没有办法让所有转轴在 $5$ 秒或更短的时间内显示相同的字符,所以答案是 $6$ 。
样例 $2$:
小码君可以在旋转开始后的 $40$ 秒内让所有转轴都显示
0,方法如下:- 旋转开始 $0$ 秒后,按下第 $1$ 个转轴的按钮,使其停止并显示 $S_1$ 的第 $((0\bmod{10})+1=1)$ 个字符
0。- 旋转开始 $10$ 秒后,按下第 $2$ 个转轴的按钮,使其停止并显示 $S_2$ 的第 $((10\bmod{10})+1=1)$ 个字符
0。- 旋转开始 $20$ 秒后,按下第 $3$ 个转轴的按钮,使其停止并显示 $S_3$ 的第 $((20\bmod{10})+1=1)$ 个字符
0。- 旋转开始 $30$ 秒后,按下第 $4$ 个转轴的按钮,使其停止并显示 $S_4$ 的第 $((30\bmod{10})+1=1)$ 个字符
0。- 旋转开始 $40$ 秒后,按下第 $5$ 个转轴的按钮,使其停止并显示 $S_5$ 的第 $((40\bmod{10})+1=1)$ 个字符
0。没有办法让所有转轴在 $39$ 秒或更短的时间内显示相同的字符,所以答案是 $40$ 。
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?