#825. 转圈游戏

转圈游戏

题目描述

nn 个小伙伴(编号从 00n1n-1)围坐一圈玩游戏。按照顺时针方向给 nn 个位置编号,从 00n1n-1。最初,第 00 号小伙伴在第 00 号位置,第 11 号小伙伴在第 11 号位置,……,依此类推。游戏规则如下:每一轮,每个位置的小伙伴都顺时针走到之后的第 mm 个位置(顺时针循环计数)。

例如,假设有 n = 5 个小伙伴,当 m = 3 时,第一轮,0 号小伙伴会走到 3 号位置,1号小伙伴会走到 4 号位置,2 号小伙伴会走到 0 号位置,3 号小伙伴会走到 1 号位置,4 号小伙伴会走到 2 号位置;第二轮,0 号小伙伴会走到 1 号位置,1 号小伙伴会走到 2 号位置,……,依此类推。

再如,仍假设有 n = 5 个小伙伴,当 m = 6 时,第一轮,0 号小伙伴会走到 1 号位置,1 号小伙伴会走到 2 号位置,……,依此类推。

现在,一共进行了 10k{10}^k 轮,请问 xx 号小伙伴最后走到了第几号位置。

输入格式

共一行,包含四个整数 n,m,k,xn, m, k, x,每两个整数之间用一个空格隔开。

输出格式

一个整数,表示 10k{10}^k 轮后 xx 号小伙伴所在的位置编号。

样例输入

10 3 4 5

样例输出

5

数据范围

一部分数据,0<k<70 < k < 7

一部分数据,0<k<1070 < k < {10}^7

一部分数据,1<n<1061 < n < {10}^60<m<n0 < m < n0x<n0 \le x < n0<k<1090 < k < {10}^9

全部数据:1<n<10181 < n < 10^{18}0<m<10180 < m < 10^{18}0x<n0 \le x < n0<k<10180 < k < 10^{18}