2013年11月2日 星期六
Codeforces Round #209 (Div. 2) D - Pair of Numbers
#include<stdio.h>
#include<vector>
#include<algorithm>
using namespace std;
vector<int> vec,ans;
int s[1000005];
int main(){
int n,ma=0,l,r,i,j;
scanf("%d",&n);
for(i=1;i<=n;i++)
scanf("%d",&s[i]);
for(i=1;i<=n;i++){
for(j=i;j>=1;j--)
if(s[j]%s[i]) break;
else l=j;
for(j=i;j<=n;j++)
if(s[j]%s[i]) break;
else r=j;
if(r-l>ma){
ma=r-l;
vec.clear();
}
if(r-l==ma) vec.push_back(l);
i=r;
}
sort(vec.begin(),vec.end());
for(i=0;i<vec.size();i++)
if(!i || vec[i]!=vec[i-1])
ans.push_back(vec[i]);
printf("%d %d\n",ans.size(),ma);
for(i=0;i<ans.size();i++)
printf("%d ",ans[i]);
puts("");
}
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言