nyoj990蚂蚁感冒
生活随笔
收集整理的這篇文章主要介紹了
nyoj990蚂蚁感冒
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
//其實(shí)遇到返回和遇到穿過是一樣的
//既然要相遇穿過,那與螞蟻方向相反且在它前面的就會感染
//而前面那些又會感染與之方向相反且在它前面的(與原先螞蟻同方向,在它后面的)
//注意特殊情況?
#include <stdio.h>
int myabs(int m) {
return m >= 0 ? m : -m;
}
int main() {
int i, n, t, f, a[102] = {0}, count;
while(~scanf("%d", &n)) {
int lc = 0, rc = 0;
scanf("%d", &f);
for(i = 1; i < n; i++) {
scanf("%d", &t);
a[myabs(t)] = t;
}
for(i = myabs(f)-1; i >= 0; i--) {
if(a[i] > 0) lc++;
a[i] = 0;
}
for(i = myabs(f)+1; i < 101; i++) {
if(a[i] < 0) rc++;
a[i] = 0;
}
if(lc == 0 && f < 0 || rc == 0 && f > 0) count = 1;
else count = lc+rc+1;
printf("%d\n", count);
}
return 0;
}
螞蟻感冒
時間限制:1000 ms ?| ?內(nèi)存限制:65535 KB
難度:2
描述
長100厘米的細(xì)長直桿子上有n只螞蟻。它們的頭有的朝左,有的朝右。 每只螞蟻都只能沿著桿子向前爬,速度是1厘米/秒。 當(dāng)兩只螞蟻碰面時,它們會同時掉頭往相反的方向爬行。 這些螞蟻中,有1只螞蟻感冒了。并且在和其它螞蟻碰面時,會把感冒傳染給碰到的螞蟻。 請你計(jì)算,當(dāng)所有螞蟻都爬離桿子時,有多少只螞蟻患上了感冒。
輸入
第一行輸入一個整數(shù)n (1 < n < 50), 表示螞蟻的總數(shù)。
接著的一行是n個用空格分開的整數(shù) Xi (-100 < Xi < 100), Xi的絕對值,表示螞蟻離開桿子左邊端點(diǎn)的距離。正值表示頭朝右,負(fù)值表示頭朝左,數(shù)據(jù)中不會出現(xiàn)0值,也不會出現(xiàn)兩只螞蟻占用同一位置。其中,第一個數(shù)據(jù)代表的螞蟻感冒了。
輸出
要求輸出1個整數(shù),表示最后感冒螞蟻的數(shù)目。
樣例輸入
3
5 -2 8
5
-10 8 -20 12 25
樣例輸出
1
3
//既然要相遇穿過,那與螞蟻方向相反且在它前面的就會感染
//而前面那些又會感染與之方向相反且在它前面的(與原先螞蟻同方向,在它后面的)
//注意特殊情況?
#include <stdio.h>
int myabs(int m) {
return m >= 0 ? m : -m;
}
int main() {
int i, n, t, f, a[102] = {0}, count;
while(~scanf("%d", &n)) {
int lc = 0, rc = 0;
scanf("%d", &f);
for(i = 1; i < n; i++) {
scanf("%d", &t);
a[myabs(t)] = t;
}
for(i = myabs(f)-1; i >= 0; i--) {
if(a[i] > 0) lc++;
a[i] = 0;
}
for(i = myabs(f)+1; i < 101; i++) {
if(a[i] < 0) rc++;
a[i] = 0;
}
if(lc == 0 && f < 0 || rc == 0 && f > 0) count = 1;
else count = lc+rc+1;
printf("%d\n", count);
}
return 0;
}
螞蟻感冒
時間限制:1000 ms ?| ?內(nèi)存限制:65535 KB
難度:2
描述
長100厘米的細(xì)長直桿子上有n只螞蟻。它們的頭有的朝左,有的朝右。 每只螞蟻都只能沿著桿子向前爬,速度是1厘米/秒。 當(dāng)兩只螞蟻碰面時,它們會同時掉頭往相反的方向爬行。 這些螞蟻中,有1只螞蟻感冒了。并且在和其它螞蟻碰面時,會把感冒傳染給碰到的螞蟻。 請你計(jì)算,當(dāng)所有螞蟻都爬離桿子時,有多少只螞蟻患上了感冒。
輸入
第一行輸入一個整數(shù)n (1 < n < 50), 表示螞蟻的總數(shù)。
接著的一行是n個用空格分開的整數(shù) Xi (-100 < Xi < 100), Xi的絕對值,表示螞蟻離開桿子左邊端點(diǎn)的距離。正值表示頭朝右,負(fù)值表示頭朝左,數(shù)據(jù)中不會出現(xiàn)0值,也不會出現(xiàn)兩只螞蟻占用同一位置。其中,第一個數(shù)據(jù)代表的螞蟻感冒了。
輸出
要求輸出1個整數(shù),表示最后感冒螞蟻的數(shù)目。
樣例輸入
3
5 -2 8
5
-10 8 -20 12 25
樣例輸出
1
3
總結(jié)
以上是生活随笔為你收集整理的nyoj990蚂蚁感冒的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 干货|Elastic 在顶级互联网公司的
- 下一篇: JEECG商业版本授权说明(仅限企业用户