6087 - 202602 SACCC:六级第一题 序列(number)
时间限制 : 1 秒
内存限制 : 512 MB
苏智有一个包含 n 个数字的序列 a1 ∼ an 和一个波动值 m(m为正整数)
对于这个序列和波动值,苏智会按照以下规则依次生成一个波动序列bi,其中
b1 = a1,对于i = 1,则分类讨论:
苏智认为序列 a 和 序列 b 的相似度越高,则这个波动值 m 就越准确
P.S. 这里的相似度是指有多少个i 满足 ai =bi
现在苏智想请你用 C++帮忙写一个 AI 程序每次自动计算出,波动值为多少时序列 a 和序列 b 的相似度最高?
输入
输入第一行包含一个整数n,表示序列长度 输入第二行包含 n个整数,分别表示ai
输出
输出第一行包含一个整数,表示最高的相似度。 输出第二行包含一个整数,表示最高相似度时的波动值m(如果有多个 m 可以使得相似度最高,则输出最小的 m)
样例
输入
5 1 2 3 2 1
输出
5 1
输入
输出
提示
数据范围
对于 30% 的数据 n ≤ 10^3。
对于 50% 的数据 n ≤ 10^4。
对于 70% 的数据 n ≤ 10^5。
对于 100% 的数据 n ≤ 10^6, −2 × 10^9 ≤ ai≤ 2 × 10^9。