C题样例都能过,感觉逻辑上没啥问题,请大佬指点一下O.0
#include<bits/stdc++.h> using namespace std; int a[100005]; int main() { int n,ans1=0,cnt0=0,use=0; cin>>n; string s; for(int i=1;i<=n;i++) { cin>>s[i]; a[i]=s[i]-'0'; } // for(int i=1;i<=n;i++) // { // cout<<a[i]<<" "; // } // cout<<endl; for(int i=1;i<=n;i++) { if(a[i]==1) ans1++; els cnt0++; if(ans1>=cnt0) continue; else { use++; ans1++; cnt0--; } } if(use>1) cout<<0; if(use==1) cout<<1; if(use==0) cout<<n; }