Submission #536667


Source Code Expand

#include <iostream>
#include <cstring>

int N, a;
int b[100000];
int ts[100000];
std::string K;

int main(){
    std::cin >> N >> a;
    --a;
    
    std::cin >> K;
    
    for(int i=0;i<N;i++){
        std::cin >> b[i];
        --b[i];
    }

    if(K.size() < 7){
        int k = std::stoi(K);
        for(int i=0;i<k;i++){
            a = b[a];
        }

        std::cout << a+1 << std::endl;
        return 0;
    }
    

    memset(ts, -1, sizeof(ts));

    int t = 0;
    for(;ts[a]==-1;){
        ts[a] = t;
        ++t;
        // printf("%d -> %d\n", a, b[a]);
        a = b[a];
    }

    // for(int i=0;i<N;i++){
    //     printf("%d\n", ts[i]);
    // }
    
    int mod = t - ts[a], k = 0;

    // printf("%d, %d\n", mod, k);
    
    for(char& c : K){
        k = (k * 10 + c - '0') % mod;
    }

    k = ((k - ts[a]) % mod + mod) % mod;

    for(;k>0;k--){
        a = b[a];
    }

    std::cout << a+1 << std::endl;
}

Submission Info

Submission Time
Task D - へんてこ辞書
User iwashisnake
Language C++11 (GCC 4.9.2)
Score 100
Code Size 999 Byte
Status AC
Exec Time 80 ms
Memory 1700 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 71 ms 1436 KB
subtask0_1.txt AC 60 ms 1444 KB
subtask0_2.txt AC 65 ms 1436 KB
subtask0_3.txt AC 57 ms 1312 KB
subtask0_4.txt AC 71 ms 1444 KB
subtask0_5.txt AC 61 ms 1444 KB
subtask0_6.txt AC 56 ms 1364 KB
subtask0_7.txt AC 65 ms 1448 KB
subtask0_8.txt AC 56 ms 1316 KB
subtask0_9.txt AC 70 ms 1440 KB
subtask0_sample_01.txt AC 26 ms 924 KB
subtask0_sample_03.txt AC 24 ms 800 KB
subtask1_0.txt AC 61 ms 1564 KB
subtask1_1.txt AC 68 ms 1688 KB
subtask1_10.txt AC 80 ms 1700 KB
subtask1_11.txt AC 25 ms 1104 KB
subtask1_2.txt AC 60 ms 1444 KB
subtask1_3.txt AC 56 ms 1448 KB
subtask1_4.txt AC 59 ms 1448 KB
subtask1_5.txt AC 73 ms 1620 KB
subtask1_6.txt AC 59 ms 1572 KB
subtask1_7.txt AC 58 ms 1572 KB
subtask1_8.txt AC 77 ms 1568 KB
subtask1_9.txt AC 78 ms 1700 KB
subtask1_sample_02.txt AC 26 ms 1184 KB