0
点赞
收藏
分享

微信扫一扫

Good Array CodeForces - 1077C


因为要计算数组总和所以这题int会爆,要用long long,坑!!!!

#include <iostream>
#include <cstring>
#include <cstdio>
#include <algorithm>
using namespace std;
typedef long long ll;
const int maxn=2e6+6;
ll a[maxn],b[maxn],num[maxn],sum,ans[maxn];
int main() {
ll n;
cin>>n;
for(ll i=1; i<=n; i++) {
cin>>a[i];
b[i]=a[i];
num[a[i]]++;
sum+=a[i];
}
ll cnt=0;
sort(b+1,b+1+n);
for(ll i=1; i<=n; i++) {
ll summ=sum-a[i];
if(b[n]==a[i]&&num[a[i]]==1) {
if(b[n-1]==summ-b[n-1])ans[++cnt]=i;
} else if(b[n]==summ-b[n])ans[++cnt]=i;

}
cout<<cnt<<endl;
for(ll i=1; i<=cnt; i++)
cout<<ans[i]<<" ";
cout<<endl;
}

 

举报

相关推荐

0 条评论