Submission #1177291


Source Code Expand

import sys

def solve():
    N, a = map(int, input().split())
    a -= 1
    k = int(input())
    b = [int(i) - 1 for i in input().split()]

    pos = a
    visited = [-1] * N
    visited[pos] = 0
    num = 1

    while visited[b[pos]] == -1:
        pos = b[pos]
        visited[pos] = num
        num += 1

    len_cyc = num - visited[b[pos]]
    pos = b[pos]
    is_cyc = [False] * N

    for i in range(len_cyc):
        is_cyc[pos] = True
        pos = b[pos]

    # print(is_cyc)

    step = 0
    pos = a

    while not is_cyc[pos]:
        pos = b[pos]
        step += 1

        if step == k:
            print(pos + 1)
            quit()

    step = (k - step) % len_cyc

    for i in range(step):
        pos = b[pos]

    print(pos + 1)


def debug(x, table):
    for name, val in table.items():
        if x is val:
            print('DEBUG:{} -> {}'.format(name, val), file=sys.stderr)
            return None

if __name__ == '__main__':
    solve()

Submission Info

Submission Time
Task D - へんてこ辞書
User nanae
Language Python (3.4.3)
Score 100
Code Size 1017 Byte
Status AC
Exec Time 112 ms
Memory 12936 KB

Judge Result

Set Name Sample Subtask1 All
Score / Max Score 0 / 0 50 / 50 50 / 50
Status
AC × 2
AC × 12
AC × 25
Set Name Test Cases
Sample subtask0_sample_01.txt, subtask0_sample_03.txt
Subtask1 subtask0_0.txt, subtask0_1.txt, subtask0_2.txt, subtask0_3.txt, subtask0_4.txt, subtask0_5.txt, subtask0_6.txt, subtask0_7.txt, subtask0_8.txt, subtask0_9.txt, subtask0_sample_01.txt, subtask0_sample_03.txt
All subtask0_0.txt, subtask0_1.txt, subtask0_2.txt, subtask0_3.txt, subtask0_4.txt, subtask0_5.txt, subtask0_6.txt, subtask0_7.txt, subtask0_8.txt, subtask0_9.txt, subtask0_sample_01.txt, subtask0_sample_03.txt, subtask1_0.txt, subtask1_1.txt, subtask1_10.txt, subtask1_11.txt, subtask1_2.txt, subtask1_3.txt, subtask1_4.txt, subtask1_5.txt, subtask1_6.txt, subtask1_7.txt, subtask1_8.txt, subtask1_9.txt, subtask1_sample_02.txt
Case Name Status Exec Time Memory
subtask0_0.txt AC 44 ms 12936 KB
subtask0_1.txt AC 38 ms 10388 KB
subtask0_2.txt AC 41 ms 12008 KB
subtask0_3.txt AC 35 ms 9884 KB
subtask0_4.txt AC 44 ms 12900 KB
subtask0_5.txt AC 38 ms 10540 KB
subtask0_6.txt AC 36 ms 9576 KB
subtask0_7.txt AC 40 ms 11268 KB
subtask0_8.txt AC 35 ms 9560 KB
subtask0_9.txt AC 42 ms 12456 KB
subtask0_sample_01.txt AC 17 ms 3064 KB
subtask0_sample_03.txt AC 17 ms 3064 KB
subtask1_0.txt AC 77 ms 10212 KB
subtask1_1.txt AC 94 ms 11428 KB
subtask1_10.txt AC 112 ms 12576 KB
subtask1_11.txt AC 17 ms 3064 KB
subtask1_2.txt AC 61 ms 9560 KB
subtask1_3.txt AC 54 ms 8652 KB
subtask1_4.txt AC 61 ms 9276 KB
subtask1_5.txt AC 74 ms 12364 KB
subtask1_6.txt AC 100 ms 9036 KB
subtask1_7.txt AC 93 ms 8616 KB
subtask1_8.txt AC 66 ms 12848 KB
subtask1_9.txt AC 80 ms 12668 KB
subtask1_sample_02.txt AC 17 ms 3064 KB