#include<iostream>
#include<vector>
#include<string>
using namespace std;
int main()
{
int n,key,k;
while(cin>>n)
{
vector<int> vec(n,0);
for(int i=0;i<n;i++)
{
cin>>k;
vec[i]=k;
}
cin>>key;
int result=0;
for(int i=0;i<n;i++)
{
int count=0;
for(int j=i;j<n;j++)
{
count+=vec[j];
if(count%key==0)
{
if(j-i+1>result)
result=j-i+1;
}
}
if(result>n-i)
break;
}
cout<<result<<endl;
}
return 0;
}
第二题
#include<iostream>
#include<vector>
#include<string>
using namespace std;
int main()
{
int n,k;
while(cin>>n)
{
vector<int> vec(n,0);
for(int i=0;i<n;i++)
{
cin>>k;
vec[i]=k;
}
int count=0;
int maxnum=vec[0];
for(int i=1;i<n;i++)
{
if(vec[i]>maxnum)
{
count+=maxnum;
maxnum=vec[i];
}
else
count+=vec[i];
}
if(maxnum>count)
cout<<"No"<<endl;
else
cout<<"Yes"<<endl;
}
return 0;
}