import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 计算出旺仔哥哥最后会站在哪位小朋友旁边
     * @param a int整型一维数组 第 i 个小朋友的数字是 a_i
     * @param m int整型 表示旺仔哥哥的移动次数
     * @return int整型
     */
    public int stopAtWho (int[] a, int m) {
        // write code here
        // 1 2 3 4 5      n
        // 0 1 2 3 4 ... n-1
        // a[0-2+6]  a[0-2+6]

        if(a.length == 1){
            return 1;
        }

        // 数组中每个元素对数组长度取模,限制范围
        for(int i = 0;i<a.length;i++){
            a[i] %= a.length;
        }

        // 被除数 ÷ 除数 = 商 ... 余数
        // a ÷ b = q ... r
        // 其中:a % b = r

        int pos = 0-a[0]+a.length;
        for(int i = 1;i<m;i++){
            pos = pos-a[pos] < 0 ? pos-a[pos]+a.length : pos-a[pos];
        }
        // 取到的pos是下标,返回需要再+1
        return pos+1;
    }
}