Submission #1675202


Source Code Expand

#include<iostream>
#include<algorithm>
#include<functional>
#include <string>
#include<iomanip>
#include<cstdio>
#include<math.h>
#include<set>
#include<stack>
#include<map>
#include<queue>
#include<cstring>
#include<vector>
#include<cstdint>
#include <type_traits>
typedef long long int ll;
#define FOR(i,a,b) for(ll i=(a);i<(b);++i)
#define REP(i,n)  FOR(i,0,n)
#define EREP(i,n) for(int i=(n-1);i>=0;--i)
#define D(n,retu) REP(i,n){cin>>retu[i];}
#define mod 1000000007
#define MIN -93193111451418101
#define INF 931931114518101
using namespace std;
typedef pair<ll, ll>P;
template<typename T, typename U>
std::enable_if_t<std::rank<T>::value == 0> fill_all(T& arr, const U& v) {
    arr = v;
}
template<typename ARR, typename U>
std::enable_if_t<std::rank<ARR>::value != 0> fill_all(ARR& arr, const U& v) {
    for (auto& i : arr) {
        fill_all(i, v);
    }
}
#define MAX_NUM 50
long long comb[MAX_NUM + 1][MAX_NUM + 1];

ll par[100000], depth[100000];
static void calc_comb()
{
    for (uint32_t i = 0; i <= MAX_NUM; i++) {
        for (uint32_t j = 0; j <= i; j++) {
            if ((j == 0) || (i == j)) {
                comb[i][j] = 1;
            }
            else {
                comb[i][j] = comb[i - 1][j - 1] + comb[i - 1][j];
            }
        }
    }
}
#define yo 100001
typedef pair<ll, double> dop;

//------------------変数-----------------------//
ll n,m,t,a,beet[11514];
string k;
vector<ll> izryt;
//-------------------関数----------------------//

ll MMMOD (string dividend, ll divisor) {
    ll MOD = 0, N = dividend.size();
    for (int i = 0; i < N; ++i) {
        MOD = (MOD * 10 + (dividend[i] - '0')) % divisor;
    }
    return MOD;
}

int main() {
    cin>>n;
    cin>>a;
    cin>>k;
    REP(i,n){
        cin>>beet[i];beet[i]--;
    }
    bool hoge[114514]={};
    ll now=beet[a-1];
    ll start;
    while(1){
 //       cout<<now<<"a"<<endl;
        if(hoge[now]){
            REP(i,izryt.size()){
                if(izryt[i]==now){
                    start=i;
                }
            }
            break;
        }
        hoge[now]=true;
    
        izryt.push_back(now);
        now=beet[now];
    }
    if(k.size()<10){
        if(stoi(k)-1<start){
            cout<<izryt[stoi(k)-1]+1<<endl;return 0;
        }
    }
    REP(i,izryt.size()){
    //    cout<<izryt[i]<<"aaa"<<endl;
    }
   // cout<<start<<endl;
    ll kei=MMMOD(k,izryt.size()-start);
    if(kei==0){kei=izryt.size()-1-start;}
    else{kei--;}
    cout<<izryt[kei+start]+1<<endl;
    
    return 0;
}
/*
 7 4
 14 1
 13 2
 12 3
 14 2
 8 2
 16 3
 11 2
 
 */











Submission Info

Submission Time
Task D - へんてこ辞書
User keidaroo
Language C++14 (GCC 5.4.1)
Score 0
Code Size 2728 Byte
Status WA
Exec Time 29 ms
Memory 1152 KB

Judge Result

Set Name Sample Subtask1 All
Score / Max Score 0 / 0 0 / 50 0 / 50
Status
AC × 2
AC × 2
WA × 10
AC × 4
WA × 21
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 WA 25 ms 1024 KB
subtask0_1.txt WA 11 ms 640 KB
subtask0_2.txt WA 15 ms 768 KB
subtask0_3.txt WA 17 ms 768 KB
subtask0_4.txt WA 7 ms 512 KB
subtask0_5.txt WA 15 ms 768 KB
subtask0_6.txt WA 5 ms 384 KB
subtask0_7.txt WA 5 ms 512 KB
subtask0_8.txt WA 16 ms 768 KB
subtask0_9.txt WA 9 ms 512 KB
subtask0_sample_01.txt AC 1 ms 384 KB
subtask0_sample_03.txt AC 1 ms 384 KB
subtask1_0.txt WA 18 ms 896 KB
subtask1_1.txt WA 9 ms 640 KB
subtask1_10.txt WA 12 ms 768 KB
subtask1_11.txt AC 1 ms 384 KB
subtask1_2.txt WA 12 ms 768 KB
subtask1_3.txt WA 8 ms 640 KB
subtask1_4.txt WA 16 ms 896 KB
subtask1_5.txt WA 11 ms 768 KB
subtask1_6.txt WA 20 ms 1024 KB
subtask1_7.txt WA 9 ms 640 KB
subtask1_8.txt WA 29 ms 1152 KB
subtask1_9.txt WA 25 ms 1152 KB
subtask1_sample_02.txt AC 1 ms 384 KB