题目描述
有许多蚂蚁在一根无限长的木棍上,每一只蚂蚁都有一个初始位置和初始朝向(任意两只蚂蚁的初始位置不同)。蚂蚁们以每秒一个单位的速度向前移动,当两只蚂蚁相遇时,它们会掉头(掉头时间忽略不计)。现给出每只蚂蚁的初始位置和初始朝向,请你计算出它们在t秒后的位置和朝向。
输入输出格式
输入格式:
第一行,两个空格隔开的整数n,t(代表蚂蚁数n和时间t)
第2~n+1行每行两个整数,第i+1行代表第i只蚂蚁的初始位置ai(ai的绝对值在1000000以内)及初始朝向bi(bi=1时蚂蚁朝右,bi=-1时蚂蚁朝左)
输出格式:
n行,每行两个整数,第i行代表t秒后第i只蚂蚁的位置及朝向(-1表示朝左,1表示朝右,0表示正在转向中)
这道题目首先看起来没有丝毫头绪,但是只要掌握了要点之后还是很简单的,
1.计算所有小球位置时,可以等效于小球相遇时是直接穿过去的。
2.按照距离排序后,运动前小球在第几的位置,运动后小球还是第几的位置,并不会改变。
这道题比较坑的就是在输入的时候,第一个输入的小球并不一定是在最左边的,所以需要记录每一个小球初始位置是第几