题目 20039

普及模拟赛 6 - D

查看题解 ↗GitHub ↗如何评测
题号
20039
标签
比赛
来源
2026 普及模拟赛 6 - D

普及模拟赛 6 - D

题目背景

小D所在的高中吃饭需要排队,学习成绩强的同学会得到大家的支持,拥有更高的声望值,但是不合适的排队的顺序会让同学们产生怨气。

题目描述

又要排队吃饭了,小D的班级中一共有 nn 个同学,学校按照学习成绩给每个同学分配了一个声望值,所有同学的声望值构成了一个 nn 的排列。

大家都喜欢声望值高的同学,所以大家都希望声望值高的同学排在前面。

有些排队的方式会使得有些同学产生怨气,引起暴动。如果一个队列的最长上升子序列长度 >2>2,就会引起同学的暴动。

小D是班级的班长,因此他不希望排队的方式会导致产生扰乱纪律的同学,他想要知道有多少种合法的排队的方式,能够使得不存在扰乱纪律的同学。

一种 合法的排队方式 指的是,整个队列的最长上升子序列长度 ≤2\le2。

求 合法的排队方式 的数量。

输入格式

输入共 11 行,一个数字 nn 表示班级中同学的数量。

输出格式

输出共 11 行,表示合法的排队顺序的数量,答案对 1000000710000007 取模。

输入输出样例 #1

输入 #1

文本
3

输出 #1

文本
5

输入输出样例 #2

输入 #2

文本
18

输出 #2

文本
7638371

输入输出样例 #3

输入 #3

文本
500

输出 #3

文本
7288045

说明/提示

对于 10%10\% 的数据,保证 1≤n≤101 \le n \le10。 另有 30%30\% 的数据,保证 1≤n≤5001\le n \le500。 对于所有数据,保证 1≤n≤50001\le n \le5000。

数据下载

题目 20039 的公开数据

正在读取文件列表…

常用命令

题目 20039 的 ROJ 命令

以下命令默认使用全局安装的 ROJ Skill,请在终端中直接执行;如果修改过 AGENT_HOME,请将命令中的 ~/.agents 替换为对应目录。