今日试题
Task 1. 数(num)
题目描述
有一个长度为 n的整数序列 a。
每一回合,你可以拿走某个位置上的数 ak,然后序列中所有等于 ak−1或者 ak+1的数字会全部消失,而你将获得ak的收益。
求最大收益是多少。
输入格式
第一行一个数 n。
接下来一行 n 个数,依次为 a1...an。
输出格式
一行一个数,表示最大收益。
数据范围
测试点 1~3:n≤10。
测试点 1~10:1≤n≤105,1≤ai≤105。
Task 2. 树(tree)
题目描述
一棵 n个点的树,两点间的距离定义为它们之间的最短路所经过的边数。
你需要统计有多少点对的距离恰好为 k。
注意:(u,v)、(v,u)看作同一点对。
输入格式
第一行两个整数 n、k。
接下来 n-1 行,每行两个数 u、v,描述一条树边 u-v。
输出格式
一行一个数,表示距离为 k 的点对个数。
数据范围
测试点 1~3:n≤1000。
测试点 4~5:k=2。
测试点 1~10:1≤n≤50000,1≤k≤500。
Task 3. 排列(perm)
题目描述
已知 p 是一个 1~n 的排列,其中满足 |pi−i|=1 的 i 有恰好 k 个。
求有多少种可能的 p,方案数模 109+7。
输入格式
一行两个整数 n、k。
输出格式
一行表示方案数。
数据范围
测试点 1~3:n≤15。
测试点 4~6:n≤100。
测试点 1~10:1≤n≤1000,0≤k≤n。
今日感想
真是大坑,出题人没有用LaTeX格式
于是第一题就像这样
每一回合,你可以拿走某个位置上的数 a_k,然后序列中所有等于 a_k - 1 或者 a_k +1 的数字会全部消失,而你将获得 a_k 的收益。
我真不知道到底是ak−1还是ak−1啊
所以跪烂
我还是要仔细读题……
+1
认真读题……