fss
提交数: 59, 通过率: 11.86%, 平均分: 41.02
题目描述:
给出一个整数序列A1..AN,对于任意的i>=3,如果有Ai=Ai-1+Ai-2,则称序列A为一个Fibnacci序列.
对于一个序列Ab1..Abk,如果有1<=b1<bi<bk<=N,则称之为序列A的一个子串.
求出A最长的Fibonacci子串.
输入格式:
第一行一个整数N
第二行N个整数分别表示A1..An
输出格式:
第一行一个数Len表示最长的子序列长度
第二行输出Len个数,表示对应的子序列.(如果有多个子序列长度都为Len,则输出下标字典序最小的那个)
样例输入:
8 1 2 3 6 10 9 14 1000
样例输出:
3 1 2 3
提示:
【样例解释】
你可以找到多个长度为3 的FIB子序列
例如(1,2,3),(3,6,9)这些答案中第一个,即(1,2,3),它的元素下标序列的字典序最小
【数据规模和约定】
30%的数据N<=200
60%的数据N<=1000
100%的数据N<=3000
Ai的绝对值均小于等于10^9
时间限制: 1000ms空间限制: 256MB