这个题有个坑就是他的数据里有不是1,2,3的数字,但是题目要的是有效的票数,而想要当选是要达到全部票数的半数所以要把所有的票都计数,而把有效票数单独计数。
#include <bits/stdc++.h> using namespace std; int main() { int a[10] = {0}; int x,ans = 0,sum = 0; cin >> x; while(x!=-1) { a[x]++; sum ++; cin >> x; } for(int i = 1; i <= 3; i++) ans += a[i]; printf("A=%d\n",a[1]); printf("B=%d\n",a[2]); printf("C=%d\n",a[3]); printf("Tot=%d\n",ans); if(a[1]*2 > sum) printf("A-yes"); else if(a[2]*2 > sum) printf("B-yes"); else if(a[3]*2 > sum) printf("C-yes"); else printf("all-NO"); return 0; }