CSES - Datatähti 2025 alku - Results
Submission details
Task:Robotti
Sender:UsernameEino
Submission time:2024-11-03 20:55:37 +0200
Language:Python3 (PyPy3)
Status:READY
Result:0
Feedback
groupverdictscore
#10
#20
Test results
testverdicttimegroup
#10.05 s1, 2details
#20.04 s1, 2details
#30.04 s1, 2details
#40.04 s1, 2details
#50.04 s1, 2details
#60.07 s1, 2details
#70.04 s1, 2details
#80.04 s1, 2details
#90.04 s1, 2details
#100.04 s1, 2details
#110.04 s1, 2details
#120.05 s2details
#130.07 s2details
#140.07 s2details
#150.06 s2details
#160.06 s2details
#170.06 s2details
#180.09 s2details
#190.40 s2details
#200.11 s2details
#210.06 s2details
#220.07 s2details
#23--2details
#240.11 s2details

Code

n=input()
m=input()

string = list(m)

global playing
playing = True

global rloc
rloc = 0

global pos
pos = 0

global matka
matka = 0

global kolik
kolik = 0

def etsir(x):
    global rloc
    for y in range(0,len(m)):
        if x[y] == 'R':
            rloc = y
            return y, 'R', rloc

def etsi(x):
    global rloc
    global pos
    pos = [pos for pos, char in enumerate(x) if char == '*']
    for y in range(0,len(pos)):
        if pos[y] > rloc:
            pos.insert(y, rloc)
            rloc = y
            return
    pos.insert(len(pos),rloc)
    return pos

def vertailu(x):
    global rloc
    global pos
    global matka
    global kolik
    if rloc == len(pos)-1:
        matka=matka+pos[rloc]-pos[rloc-1]
        pos.pop(rloc)
        rloc=rloc-1
        kolik += 1
        return 1
    elif rloc == 0:
         matka=matka+pos[rloc+1]-pos[rloc]
         pos.pop(rloc)
         kolik += 1
         return 1
    elif pos[rloc]-pos[rloc-1] > pos[rloc+1]-pos[rloc]:
        matka = matka+pos[rloc+1]-pos[rloc]
        pos.pop(rloc)
        kolik += 1
        return 1
    elif pos[rloc]-pos[rloc-1] < pos[rloc+1]-pos[rloc]:
         matka = matka+pos[rloc]-pos[rloc-1]
         pos.pop(rloc)
         rloc = rloc-1
         kolik += 1
         return 1
    else:
        return -1

etsir(string)
etsi(m)
print(pos)
if len(pos) > 1:
    tulos = 1
else:
    tulos = -1
while tulos != -1:
   tulos = vertailu(1)
   if len(pos) == 1:
       tulos = -1

print(matka, kolik)

Test details

Test 1

Group: 1, 2

Verdict:

input
1
R

correct output
0 0

user output
[0]
0 0

Test 2

Group: 1, 2

Verdict:

input
10
...R......

correct output
0 0

user output
[3]
0 0

Test 3

Group: 1, 2

Verdict:

input
10
**.R...***

correct output
12 5

user output
[0, 1, 3, 7, 8, 9]
12 5

Test 4

Group: 1, 2

Verdict:

input
10
***R******

correct output
0 0

user output
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
0 0

Test 5

Group: 1, 2

Verdict:

input
1000
R................................

correct output
947 9

user output
[0, 148, 226, 257, 428, 494, 5...

Test 6

Group: 1, 2

Verdict:

input
1000
.................................

correct output
886 9

user output
[113, 231, 529, 611, 708, 712,...

Error:
Traceback (most recent call last):
  File "input/code.py", line 78, in <module>
    tulos = vertailu(1)
  File "input/code.py", line 56, in vertailu
    elif pos[rloc]-pos[rloc-1] > pos[rloc+1]-pos[rloc]:
IndexError: list index out of range

Test 7

Group: 1, 2

Verdict:

input
1000
.....*..*....**..**..*......*....

correct output
1287 400

user output
[5, 8, 13, 14, 17, 18, 21, 28,...

Test 8

Group: 1, 2

Verdict:

input
1000
************.*****************...

correct output
0 0

user output
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9,...

Test 9

Group: 1, 2

Verdict:

input
1000
******************************...

correct output
0 0

user output
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9,...

Test 10

Group: 1, 2

Verdict:

input
1000
R*****************************...

correct output
999 999

user output
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9,...

Test 11

Group: 1, 2

Verdict:

input
1000
******************************...

correct output
999 999

user output
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9,...

Test 12

Group: 2

Verdict:

input
10000
.......**........*...........*...

correct output
10971 999

user output
[7, 8, 17, 29, 41, 56, 61, 70,...

Test 13

Group: 2

Verdict:

input
10000
*..*....*......*.....*..*........

correct output
9999 999

user output
[0, 3, 8, 15, 21, 24, 35, 43, ...

Error:
Traceback (most recent call last):
  File "input/code.py", line 78, in <module>
    tulos = vertailu(1)
  File "input/code.py", line 56, in vertailu
    elif pos[rloc]-pos[rloc-1] > pos[rloc+1]-pos[rloc]:
IndexError: list index out of range

Test 14

Group: 2

Verdict:

input
10000
*.*.*...**.*...*....**.**.**.....

correct output
18766 5000

user output
[0, 2, 4, 8, 9, 11, 15, 20, 21...

Test 15

Group: 2

Verdict:

input
10000
R*****************************...

correct output
9999 9999

user output
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9,...

Test 16

Group: 2

Verdict:

input
10000
******************************...

correct output
9999 9999

user output
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9,...

Test 17

Group: 2

Verdict:

input
200000
.................................

correct output
0 0

user output
[100000]
0 0

Test 18

Group: 2

Verdict:

input
200000
.................................

correct output
299934 10000

user output
[45, 48, 77, 80, 81, 103, 110,...

Test 19

Group: 2

Verdict:

input
200000
**.***....**..**.....***.*..*....

correct output
299998 100000

user output
[0, 1, 3, 4, 5, 10, 11, 14, 15...

Test 20

Group: 2

Verdict:

input
200000
******************************...

correct output
0 0

user output
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9,...

Test 21

Group: 2

Verdict:

input
200000
R................................

correct output
133765 3

user output
[0, 70142, 84564, 133765]
133765 3

Test 22

Group: 2

Verdict:

input
200000
R................................

correct output
199982 5000

user output
[0, 66, 81, 106, 230, 241, 278...

Test 23

Group: 2

Verdict:

input
200000
R*****************************...

correct output
199999 199999

user output
(empty)

Test 24

Group: 2

Verdict:

input
200000
******************************...

correct output
199999 199999

user output
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9,...