| Task: | Robotti |
| Sender: | raikasdev |
| Submission time: | 2024-10-28 19:42:10 +0200 |
| Language: | Python3 (CPython3) |
| Status: | READY |
| Result: | 0 |
| group | verdict | score |
|---|---|---|
| #1 | RUNTIME ERROR | 0 |
| #2 | RUNTIME ERROR | 0 |
| test | verdict | time | group | |
|---|---|---|---|---|
| #1 | RUNTIME ERROR | 0.02 s | 1, 2 | details |
| #2 | RUNTIME ERROR | 0.02 s | 1, 2 | details |
| #3 | RUNTIME ERROR | 0.02 s | 1, 2 | details |
| #4 | ACCEPTED | 0.02 s | 1, 2 | details |
| #5 | RUNTIME ERROR | 0.02 s | 1, 2 | details |
| #6 | RUNTIME ERROR | 0.02 s | 1, 2 | details |
| #7 | RUNTIME ERROR | 0.02 s | 1, 2 | details |
| #8 | ACCEPTED | 0.02 s | 1, 2 | details |
| #9 | ACCEPTED | 0.02 s | 1, 2 | details |
| #10 | RUNTIME ERROR | 0.02 s | 1, 2 | details |
| #11 | RUNTIME ERROR | 0.02 s | 1, 2 | details |
| #12 | RUNTIME ERROR | 0.03 s | 2 | details |
| #13 | RUNTIME ERROR | 0.02 s | 2 | details |
| #14 | TIME LIMIT EXCEEDED | -- | 2 | details |
| #15 | RUNTIME ERROR | 0.02 s | 2 | details |
| #16 | RUNTIME ERROR | 0.02 s | 2 | details |
| #17 | RUNTIME ERROR | 0.08 s | 2 | details |
| #18 | TIME LIMIT EXCEEDED | -- | 2 | details |
| #19 | TIME LIMIT EXCEEDED | -- | 2 | details |
| #20 | ACCEPTED | 0.03 s | 2 | details |
| #21 | RUNTIME ERROR | 0.02 s | 2 | details |
| #22 | RUNTIME ERROR | 0.02 s | 2 | details |
| #23 | RUNTIME ERROR | 0.02 s | 2 | details |
| #24 | RUNTIME ERROR | 0.03 s | 2 | details |
Code
# Robotti on rakennuksessa, jossa on n vierekkäistä huonetta.
# Jokaisen kahden vierekkäisen huoneen välissä on ovi. Joissakin huoneissa on kolikko.
# Robotti siirtyy aina lähimpään huoneeseen, jossa on kolikko, ja poimii kolikon.
# Robotti pysähtyy, kun kaikki kolikot on kerätty tai lähin huone ei ole yksiselitteinen.
# Jälkimmäisessä tapauksessa robotti ei tiedä, miten sen tulisi toimia.
# Montako askelta robotti liikkuu yhteensä ja montako kolikkoa se kerää?
# Syöte
# Syötteen ensimmäisellä rivillä on kokonaisluku n: huoneiden määrä.
# Seuraavalla rivillä on merkkijono, jossa on n merkkiä.
# Merkkijono kuvaa rakennuksen: . on tyhjä huone, * on kolikkohuone
# ja R on robotin aloitushuone.
# Merkki R esiintyy tarkalleen kerran.
# Tuloste
# Tulosta kaksi kokonaislukua: robotin askelten määrä ja kerättyjen kolikoiden määrä.
# Esimerkki
# Syöte:
# 20
# **.*......*.R*...*..
# Tuloste:
# 4 2
# Selitys: Robotti liikkuu ensin askeleen oikealle ja kerää kolikon.
# Sitten se liikkuu kolme askelta vasemmalle ja kerää kolikon.
# Tämän jälkeen vasen ja oikea kolikko ovat yhtä kaukana ja robotti pysähtyy.
# Kuvassa on esitetty robotin sijainti eri vaiheissa.
totalRooms = int(input())
rooms = list(input())
robot = rooms.index("R")
stalemate = False
def findCoin(index, direction):
i = index + direction
while index > 0 and index < totalRooms:
if rooms[i] == '*':
return i - index
i += direction
coins = 0
steps = 0
while stalemate == False:
# Start scanning both directions from robot
leftDistance = findCoin(robot, -1)
rightDistance = findCoin(robot, 1)
if (leftDistance * -1) < rightDistance:
robot += leftDistance
coins += 1
steps += leftDistance * -1
rooms[robot] = '.'
#print("Moving left", leftDistance * -1)
elif (leftDistance * -1) > rightDistance:
robot += rightDistance
coins += 1
steps += rightDistance
rooms[robot] = '.'
#print("Moving right", rightDistance)
else:
#print("Nowhere to move")
stalemate = True
print(steps, coins)Test details
Test 1
Group: 1, 2
Verdict: RUNTIME ERROR
| input |
|---|
| 1 R |
| correct output |
|---|
| 0 0 |
| user output |
|---|
| (empty) |
Error:
Traceback (most recent call last):
File "/box/input/code.py", line 47, in <module>
if (leftDistance * -1) < rightDistance:
TypeError: unsupported operand type(s) for *: 'NoneType' and 'int'Test 2
Group: 1, 2
Verdict: RUNTIME ERROR
| input |
|---|
| 10 ...R...... |
| correct output |
|---|
| 0 0 |
| user output |
|---|
| (empty) |
Error:
Traceback (most recent call last):
File "/box/input/code.py", line 45, in <module>
leftDistance = findCoin(robot, -1)
File "/box/input/code.py", line 37, in findCoin
if rooms[i] == '*':
IndexError: list index out of rangeTest 3
Group: 1, 2
Verdict: RUNTIME ERROR
| input |
|---|
| 10 **.R...*** |
| correct output |
|---|
| 12 5 |
| user output |
|---|
| (empty) |
Error:
Traceback (most recent call last):
File "/box/input/code.py", line 47, in <module>
if (leftDistance * -1) < rightDistance:
TypeError: unsupported operand type(s) for *: 'NoneType' and 'int'Test 4
Group: 1, 2
Verdict: ACCEPTED
| input |
|---|
| 10 ***R****** |
| correct output |
|---|
| 0 0 |
| user output |
|---|
| 0 0 |
Test 5
Group: 1, 2
Verdict: RUNTIME ERROR
| input |
|---|
| 1000 R................................ |
| correct output |
|---|
| 947 9 |
| user output |
|---|
| (empty) |
Error:
Traceback (most recent call last):
File "/box/input/code.py", line 47, in <module>
if (leftDistance * -1) < rightDistance:
TypeError: unsupported operand type(s) for *: 'NoneType' and 'int'Test 6
Group: 1, 2
Verdict: RUNTIME ERROR
| input |
|---|
| 1000 ................................. |
| correct output |
|---|
| 886 9 |
| user output |
|---|
| (empty) |
Error:
Traceback (most recent call last):
File "/box/input/code.py", line 46, in <module>
rightDistance = findCoin(robot, 1)
File "/box/input/code.py", line 37, in findCoin
if rooms[i] == '*':
IndexError: list index out of rangeTest 7
Group: 1, 2
Verdict: RUNTIME ERROR
| input |
|---|
| 1000 .....*..*....**..**..*......*.... |
| correct output |
|---|
| 1287 400 |
| user output |
|---|
| (empty) |
Error:
Traceback (most recent call last):
File "/box/input/code.py", line 46, in <module>
rightDistance = findCoin(robot, 1)
File "/box/input/code.py", line 37, in findCoin
if rooms[i] == '*':
IndexError: list index out of rangeTest 8
Group: 1, 2
Verdict: ACCEPTED
| input |
|---|
| 1000 ************.*****************... |
| correct output |
|---|
| 0 0 |
| user output |
|---|
| 0 0 |
Test 9
Group: 1, 2
Verdict: ACCEPTED
| input |
|---|
| 1000 ******************************... |
| correct output |
|---|
| 0 0 |
| user output |
|---|
| 0 0 |
Test 10
Group: 1, 2
Verdict: RUNTIME ERROR
| input |
|---|
| 1000 R*****************************... |
| correct output |
|---|
| 999 999 |
| user output |
|---|
| (empty) |
Error:
Traceback (most recent call last):
File "/box/input/code.py", line 47, in <module>
if (leftDistance * -1) < rightDistance:
TypeError: unsupported operand type(s) for *: 'NoneType' and 'int'Test 11
Group: 1, 2
Verdict: RUNTIME ERROR
| input |
|---|
| 1000 ******************************... |
| correct output |
|---|
| 999 999 |
| user output |
|---|
| (empty) |
Error:
Traceback (most recent call last):
File "/box/input/code.py", line 46, in <module>
rightDistance = findCoin(robot, 1)
File "/box/input/code.py", line 37, in findCoin
if rooms[i] == '*':
IndexError: list index out of rangeTest 12
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 10000 .......**........*...........*... |
| correct output |
|---|
| 10971 999 |
| user output |
|---|
| (empty) |
Error:
Traceback (most recent call last):
File "/box/input/code.py", line 47, in <module>
if (leftDistance * -1) < rightDistance:
TypeError: unsupported operand type(s) for *: 'NoneType' and 'int'Test 13
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 10000 *..*....*......*.....*..*........ |
| correct output |
|---|
| 9999 999 |
| user output |
|---|
| (empty) |
Error:
Traceback (most recent call last):
File "/box/input/code.py", line 46, in <module>
rightDistance = findCoin(robot, 1)
File "/box/input/code.py", line 37, in findCoin
if rooms[i] == '*':
IndexError: list index out of rangeTest 14
Group: 2
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 10000 *.*.*...**.*...*....**.**.**..... |
| correct output |
|---|
| 18766 5000 |
| user output |
|---|
| (empty) |
Test 15
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 10000 R*****************************... |
| correct output |
|---|
| 9999 9999 |
| user output |
|---|
| (empty) |
Error:
Traceback (most recent call last):
File "/box/input/code.py", line 47, in <module>
if (leftDistance * -1) < rightDistance:
TypeError: unsupported operand type(s) for *: 'NoneType' and 'int'Test 16
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 10000 ******************************... |
| correct output |
|---|
| 9999 9999 |
| user output |
|---|
| (empty) |
Error:
Traceback (most recent call last):
File "/box/input/code.py", line 46, in <module>
rightDistance = findCoin(robot, 1)
File "/box/input/code.py", line 37, in findCoin
if rooms[i] == '*':
IndexError: list index out of rangeTest 17
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 ................................. |
| correct output |
|---|
| 0 0 |
| user output |
|---|
| (empty) |
Error:
Traceback (most recent call last):
File "/box/input/code.py", line 45, in <module>
leftDistance = findCoin(robot, -1)
File "/box/input/code.py", line 37, in findCoin
if rooms[i] == '*':
IndexError: list index out of rangeTest 18
Group: 2
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 200000 ................................. |
| correct output |
|---|
| 299934 10000 |
| user output |
|---|
| (empty) |
Test 19
Group: 2
Verdict: TIME LIMIT EXCEEDED
| input |
|---|
| 200000 **.***....**..**.....***.*..*.... |
| correct output |
|---|
| 299998 100000 |
| user output |
|---|
| (empty) |
Test 20
Group: 2
Verdict: ACCEPTED
| input |
|---|
| 200000 ******************************... |
| correct output |
|---|
| 0 0 |
| user output |
|---|
| 0 0 |
Test 21
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 R................................ |
| correct output |
|---|
| 133765 3 |
| user output |
|---|
| (empty) |
Error:
Traceback (most recent call last):
File "/box/input/code.py", line 47, in <module>
if (leftDistance * -1) < rightDistance:
TypeError: unsupported operand type(s) for *: 'NoneType' and 'int'Test 22
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 R................................ |
| correct output |
|---|
| 199982 5000 |
| user output |
|---|
| (empty) |
Error:
Traceback (most recent call last):
File "/box/input/code.py", line 47, in <module>
if (leftDistance * -1) < rightDistance:
TypeError: unsupported operand type(s) for *: 'NoneType' and 'int'Test 23
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 R*****************************... |
| correct output |
|---|
| 199999 199999 |
| user output |
|---|
| (empty) |
Error:
Traceback (most recent call last):
File "/box/input/code.py", line 47, in <module>
if (leftDistance * -1) < rightDistance:
TypeError: unsupported operand type(s) for *: 'NoneType' and 'int'Test 24
Group: 2
Verdict: RUNTIME ERROR
| input |
|---|
| 200000 ******************************... |
| correct output |
|---|
| 199999 199999 |
| user output |
|---|
| (empty) |
Error:
Traceback (most recent call last):
File "/box/input/code.py", line 46, in <module>
rightDistance = findCoin(robot, 1)
File "/box/input/code.py", line 37, in findCoin
if rooms[i] == '*':
IndexError: list index out of range