美团笔试题,上代码
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
{
scanf("%d",a+i);
a[i]+=a[i-1];
}
cin>>k;
memset(mk,-1,sizeof(mk));
mk[0]=0;
int ans=0;
for(int i=1;i<=n;i++)
{
int key=a[i]%k;
if(mk[key]+1) ans=max(ans,i-mk[key]);
else mk[key]=i;
}
cout<<ans<<endl;
return 0;
}
int main()
{
int a[31],n,sum=0;cin>>n;
for(int i=0;i<n;i++) cin>>a[i],sum+=a[i];
sort(a,a+n);
if(a[n-1]==a[n-2]) cout<<"Yes"<<endl;
else
{
if(sum-a[n-1]>=a[n-1]) cout<<"Yes"<<endl;
else cout<<"No"<<endl;
}
}