Wprowadzenie
Mam niektóre samochody ASCII, które mają prędkość i kierunek. Ich prędkość jest reprezentowana przez ich liczbę. Jeśli samochód jest, <>
to zatrzymał się. Na przykład:
<>
1>
2>
3>
Po chwili rozumiem
<>
1>
2>
3>
Po drugiej dostaję
<>
1>
2>
3>
Jeśli dwa samochody są zbyt blisko, ulegają awarii.
1> <1
1> <2
Po chwili staje się
###
##
Gdyby dwa samochody przecięły się, stałyby się hashtagami, gdyby były.
Jeśli jeden samochód jest wystarczająco szybki, aby „przeskoczyć” nad drugim, nie powoduje to wypadku.
3><1 2><1 4><>
staje się
<13> ### <>4>
Jeśli samochód zniknie z ekranu, znika (chyba że nastąpiła awaria). Nie ma mowy, żeby samochód wyjechał bezpośrednio z ekranu.
<11>
<1 1>
1 1>
1>
Wyzwanie
Na podstawie danej fizyki samochodu musisz stworzyć program, który może przesunąć się w czasie o jedną sekundę w przyszłość. Dane wejściowe to samochody ze spacjami i maksymalną prędkością 5 (pasujące wyrażenie regularne (<[1-5]|[1-5]>|<>| )+
). Symulacja odbędzie się na jednej linii, jednak ta linia nie ma ustalonego rozmiaru.
Przypadki testowe
<> 1> 2> 3> 4> 5>
<> 1> 2> 3> 4> 5>
1><1 1> <1 1> <1
## ### 1><1
2><2 2> <2 2> <2 2> <2 2> <2
<22> ### ## ### 2><2
<22> <1 3> <2
### ##
<><> 1><> 2><> 3><> 4><> 5><>
<><> ### ## ### <>4> <> 5>
<><1 <2 <3 <4 <5
###<2<3<4<5
Punktacja
To jest golf-golf, więc kod z najmniejszą liczbą bajtów wygrywa!
<>