测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A29561. 逆行

填空题 较易

题目描述

逆行

题目描述

网上有个段子说:妻子在家听广播,听到某高速路上有一辆车在逆行,想到丈夫在那条高速上行驶,就打电话对丈夫说:“老公啊,你走的那条高速上有一辆车在逆行,你小心点。”她丈夫说:“何止啊!我看好几百辆车都在逆行!”

现在我们查了一下高速公路上拍到的好几百辆车的时速,发现有的朝东开,有的朝西开,都不知道是谁在逆行了…… 于是让我们简单粗暴地解决这个问题:朝哪个方向开的车多,哪个方向就是正确的,另一方就判为逆行(开玩笑的千万嫑当真)。现在就请你统计一下,有多少辆车是逆行的。

时间限制:1000

内存限制:65536

输入

输入第一行给出一个正整数 N,为高速公路上拍到的车辆数,题目保证这是一个不超过 1000 的奇数。第二行给出 N 个整数,为每辆车的时速。我们用正数表示朝东开的时速,负数表示朝西开的时速。题目保证时速(绝对值)均不超过 200,并且时速没有 0,即没有一辆车是停在高速公路上不动的。

输出

在一行中输出逆行的车辆数。

样例输入

7
85 -90 110 95 112 -120 -70

样例输出

3


参考答案

#include <bits/stdc++.h> using namespace std; int main() { int N; cin>>N; int dong=0; //朝东开的车数量 int xi=0; //朝西开的车数量 for(int i=0;i<N;i++){ int a; cin>>a; if(a>0) dong++; //如果为正数,则朝东开的车数量加1 else if(a<0) xi++; //如果为负数,则朝东开的车数量加1 } if(dong>xi) cout<<xi; //如果朝东开的车大于朝西开的车,则输出朝西开的车数量 else if(dong<xi) cout<<dong; //如果朝东开的车小于朝西开的车,则输出朝东开的车数量 return 0; }
上一题 下一题