蒟蒻,求帮助!(c++谢谢)

学术版

E? 排序,贪心
by LordLeft @ 2019-07-18 10:47:23


如楼上
by _Felix @ 2019-07-18 10:53:20


不知道具体怎么实现啊
by OY星辰_狂蔫 @ 2019-07-18 11:02:18


```cpp #include<bits/stdc++.h> using namespace std; long long n,j,k,a[999999]; int main() { cin>>n; for(int i=1;i<=n;i++) cin>>a[i]; sort(a+1,a+1+n); while(a[n]>100) n--; int s=n,t=0; for(j=1;j<=n;) { if(a[j]+a[n]<=100){t++,j++,n--;} else if(a[j]+a[n]>100){t++;n--;} } if(j==n) t++; if(t>10) {cout<<10<<" "<<s; return 0;} cout<<t<<" "<<s; return 0; } ```
by OY星辰_狂蔫 @ 2019-07-18 11:04:15


哪里错了???
by OY星辰_狂蔫 @ 2019-07-18 11:04:28


```cpp #include<bits/stdc++.h> using namespace std; int n,a[201],s,ans,sum,t; int main) { cin>>n; for(int i=0;i<n;i++) { cin>>s; if(s<=100) a[t++]=s; } sort(a,a+t); for(int i=0,j=t-1;i<j;) { if(a[i]+a[j]>100) {ans++,j--;} else {sum++,i++;j--;} } if(sum>10) { cout<<10<<" "<<20; } if(ans+sum>10) { cout<<10<<" "<<sum*2+(10-sum); } else { cout<<ans+sum<<" "<<sum*2+ans; } return 0; } ```
by OY星辰_狂蔫 @ 2019-07-18 11:24:40


|