import java.util.*

fun main(args: Array<String>) {
    val sc = Scanner(System.`in`);
    var N:Int =sc.nextInt();
    var K:Long=sc.nextLong();
    val A :ArrayList<Int> = ArrayList();
    for(i in 0..N-1){
        A.add(sc.nextInt()-1);    //入力を受け取る
    }
    val loop :ArrayList<Int> = ArrayList(); //来た町を記録する
    var visited = IntArray(N){-1}; //訪問判定（2度来てたらループする）
    //初期条件を考える
    var now = 0;
    while(visited[now] < 0){
        visited[now] = loop.size;
        loop.add(now);
        now = A[now];
    }
    //println(visited[now]);
    //println(loop.size);
    var loopsize = loop.size - visited[now];
    var beforeloop = visited[now];
    if(K < beforeloop){
        println(loop[(K.toInt() )]+1);
    }else{
        K-=beforeloop;
        K%=loopsize.toLong();
        println(loop[beforeloop+ (K.toInt() ) % loopsize]+1);
    }
    //println(loop);
    //println(visited);
/*
    println(count);
    println(beforeloop);
    println(loop.toString());
    println(A.toString());
*/
}
