题目大意:一根长L厘米的木棍上有n只蚂蚁,每只蚂蚁有个开始的位置和爬行方向,速度为1.当两只蚂蚁相撞后,两者同时掉头继续爬行,求按输入顺序给出每只蚂蚁T秒后的位置后朝向。
/*蚂蚁相遇时可以理解为“对穿而过"
关键是找到移动后,对应位置的蚂蚁是最初的哪只蚂蚁,
于是发现蚂蚁移动后的相对顺序是不变的,于是用order数组哈希定位
order[i]数组:最初顺序为i的位置,这个打表用得好
感觉用两个数组就是节约2*n的i++
*/
#include<cstdio>
#include<iostream>
#include<algorithm>
using namespace std;
const int maxn=10000+5;
struct node
{
int id;//输入时的顺序
int p;//位置
int d;//方向
bool operator<(node t)const
{
return p<t.p;
}