一条比较基础的题 //NC22198

选村长

https://ac.nowcoder.com/acm/problem/22198

牛村正在进行村长选举,投票人一人一票,牛可乐是候选人A(投票代号为1)、牛能是候选人B(投票代号为2)和牛妹是候选人C(投票代号为3),其他投票代号无效。 投票列表用以-1表示结束,请分别统计出他们的得票数。谁的得票超过全部投票人数的半数,就输出谁当选为村长,如“A-yes”表示A当选,全部不过半数,输出“all-NO”。

**思路:利用数组a[3]来存放三个候选人的票数,假设A、B、C分别是a[1],a[2],a[3]。在数据输入是已经动态的在统计每个人的排数。

using namespace std;
int main()
{
    int a[3]={0};
    int cmp = 0;
    while(1)
    {
        int n;
        cin>>n;
        if(n!=-1)
        {
            a[n]++;
            cmp++;
        }
        else
        {
            break;
        }
    }
    int all = a[1]+a[2]+a[3];
    cout<<"A="<<a[1]<<endl;
    cout<<"B="<<a[2]<<endl;
    cout<<"C="<<a[3]<<endl;
    cout<<"Tot="<<all<<endl;
 
    if(a[1]>cmp/2) cout<<"A-yes"<<endl;
    else if(a[2]>cmp/2)  cout<<"B-yes"<<endl;
    else if(a[3]>cmp/2)  cout<<"C-yes"<<endl;
    else cout<<"all-NO"<<endl;
}
全部评论
数组越界了
点赞 回复 分享
发布于 2022-03-07 20:09

相关推荐

这算盘打的
程序员小白条:都这样的,都是潜规则,你自己说可以实习一年就行了,实习可以随便跑路的
点赞 评论 收藏
分享
酷酷我灵儿帅:这去不去和线不线下面说实话没啥关系
点赞 评论 收藏
分享
门口唉提是地铁杀:之前b站被一个游戏demo深深的吸引了。看up主页发现是个初创公司,而且还在招人,也是一天60。二面的时候要我做一个登录验证和传输文件两个微服务,做完要我推到github仓库,还要我加上jaeger和一堆运维工具做性能测试并且面试的时候投屏演示。我傻乎乎的做完以后人家跟我说一句现在暂时不招人,1分钱没拿到全是白干
你的秋招第一场笔试是哪家
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-07 13:46
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务