题目名称 | 3805. [JZOI 2022 day3]数列 |
---|---|
输入输出 | jzoi2022_sequence.in/out |
难度等级 | ★ |
时间限制 | 1000 ms (1 s) |
内存限制 | 512 MiB |
测试数据 | 10 |
题目来源 | yuan 于2022-11-24加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:6, 提交:7, 通过率:85.71% | ||||
yuan | 100 | 0.000 s | 0.00 MiB | C++ |
┭┮﹏┭┮ | 100 | 0.000 s | 0.00 MiB | C++ |
宇战 | 100 | 0.000 s | 0.00 MiB | C++ |
ムラサメ | 100 | 0.000 s | 0.00 MiB | C++ |
dick | 100 | 0.000 s | 0.00 MiB | C++ |
超人 | 100 | 0.000 s | 0.00 MiB | C++ |
宇战 | 0 | 0.005 s | 0.00 MiB | C++ |
本题关联比赛 | |||
NOIP2023模拟赛5 |
关于 数列 的近10条评论(全部评论) |
---|
jzoi2022_sequence.in
输出文件:jzoi2022_sequence.out
简单对比给定一个正整数 $n$ ,输出外观数列的第 $n$ 项。
外观数列是一个整数序列,从数字 $1$ 开始,序列中的每一项都是对前一项的描述。
你可以将其视作是由递归公式定义的数字字符串序列:
$countAndSay(1)\ =\ \ "1"$
$countAndSay(n)$ 是对 $countAndSay(n-1)$ 的描述,然后转换成另一个数字字符串。
前五项如下:
$1.$ $1$
$2.$ $11$
$3.$ $21$
$4.$ $1211$
$5.$ $111221$
第一项是数字 $1$
描述前一项,这个数是 $1$ 即 “ 一 个 $1$ ”,记作 $11$
描述前一项,这个数是 $11$ 即 “ 二 个 $1$ ”,记作 $21$
描述前一项,这个数是 $21$ 即 “ 一 个 $2$ + 一 个 $1$ ”,记作 $1211$
描述前一项,这个数是 $1211$ 即 “ 一 个 $1$ + 一 个 $2$ + 二 个 $1$ ”,记作 $111221$
要描述一个数字字符串,⾸先要将字符串分割为最⼩数量的组,每个组都由连续的最多相同字符组成。
然后对于每个组,先描述字符的数量,然后描述字符,形成一个描述组。要将描述转换为数字字符串,先将每组中的字符数量⽤数字替换,再将所有描述组连接起来。
一个整数 $n$。表示外观数列的第 $n$ 项。
外观数列第 $n$ 项的数字字符串。
7
13112221
对于其中 $20\%$ 的数据,保证 $n\ ≤\ 10$。
对于其中 $100\%$ 的数据,保证 $1\ ≤\ n\ ≤\ 25$。