Description:
一根长度为L厘米的木棒上有N只蚂蚁,每只蚂蚁要么向左走,要么向右走,速度为1厘米/秒。当两只蚂蚁相撞时,他们会同时掉头(掉头时间不计)给出每只蚂蚁距离木棒左端的距离,问多少秒后,刚好所有蚂蚁都从木棒上掉下来。
N 和 L均不超过1000
输入第一行两个整数,分别是N和L
接下来N行,每行先是一个字符,L或R,代表向左还是向右,然后是一个整数x,代表这个蚂蚁距离木棒左端的距离。
样例输入:
4 10
R 1
R 5
L 3
R 9
样例输出:
9
Hint:
假设你在远处观察两只蚂蚁相向而行,他们相撞后掉头,和直接穿过有什么区别?
(这个我懂,没有区别!!!!)
#include<stdio.h>
int main() {
char m, gg;
int N, L, i, time, a[1001] = {0}, b[1001] = {0};
time = 0;
scanf("%d %d", &N, &L);
scanf("%c", &gg);
//用gg(char)读掉换行符!
for (i = 0; i < N; i++) {
scanf("%c %d%c", &m, &a[i], &gg);
// 这里要注意没有空格
if (m == 'R') {
b[i] = L - a[i];
} else {
b[i] = a[i];
}
}
for (i = 0; i < N; i++) {
if (b[i] > time)
time = b[i];
}
printf("%d\n", time);
return 0;
}
想说这题真的超坑······