SZ#TG#038. [洛谷 P3498] [POI 2010] KOR-Beads

提交0 通过0
通过率0%
时间限制2000ms
内存限制32MiB
    ID: 13553 传统题 2000ms 32MiB 尝试: 0 已通过: 0 难度: 提高 上传者: 标签>信息学奥赛一本通提高篇第2部分 字符串算法(提高篇)第1章 哈希和哈希表题源:luogu

题目描述

题目描述

Byteasar决定制造一条项链,她买了一串珠子,她有一个机器,能把这条珠子切成很多段,使得每段恰有k个珠子(k>0),如果这条珠子的长度不是k的倍数,最后一块长度小于k的段就被丢弃了。 Byteasar想知道,选择什么数字k可以得到最多的不同的段。注意这里的段是可以反转的,即,子串1,2,3和3,2,1被认为是一样的。

输入描述

第一行一个正整数n,表示珠子的长度。 第二行n个空格隔开的正整数a1,a2,ana_1,a_2, \cdots a_n,描述这一串珠子的颜色。

输出描述

第一行两个空格隔开的正整数,第一个表示能获得的最大不同的段的个数,第二个表示能获得最大值的k的个数。 第二行若干空格隔开的正整数k,表示所有能够取得最大值的k,请将k按照从小到大的顺序输出。

示例1

输入

21
1 1 1 2 2 2 3 3 3 1 2 3 3 1 2 2 1 3 3 2 1

输出

6 1
2

备注

对于100%100 \%的数据,1n2×1051 \le n \le 2 \times 10^5,且1in\forall 1 \le i \le n,有1ain1 \le a_i \le n