[NOIP2013 提高组] 转圈游戏
题目背景
NOIP2013 提高组 D1T1
题目描述
n n n 个小伙伴(编号从 0 0 0 到 n − 1 n-1 n−1)围坐一圈玩游戏。按照顺时针方向给 n n n 个位置编号,从 0 0 0 到 n − 1 n-1 n−1。最初,第 0 0 0 号小伙伴在第 0 0 0 号位置,第 1 1 1 号小伙伴在第 1 1 1 号位置,……,依此类推。游戏规则如下:每一轮第 0 0 0 号位置上的小伙伴顺时针走到第 m m m 号位置,第 1 1 1 号位置小伙伴走到第 m + 1 m+1 m+1 号位置,……,依此类推,第 n − m n - m n−m 号位置上的小伙伴走到第 0 0 0 号位置,第 n − m + 1 n - m+1 n−m+1 号位置上的小伙伴走到第 1 1 1 号位置,……,第 n − 1 n-1 n−1 号位置上的小伙伴顺时针走到第 m − 1 m-1 m−1 号位置。
现在,一共进行了 10 k {10}^k 10k 轮,请问 x x x 号小伙伴最后走到了第几号位置。
输入格式
共一行,包含四个整数 n , m , k , x n, m, k, x n,m,k,x,每两个整数之间用一个空格隔开。
输出格式
一个整数,表示 10 k {10}^k 10k 轮后 x x x 号小伙伴所在的位置编号。
样例 #1
样例输入 #1
10 3 4 5
样例输出 #1
5
提示
对于 30 % 30\% 30% 的数据, 0 < k < 7 0 < k < 7 0<k<7;
对于 80 % 80\% 80% 的数据, 0 < k < 10 7 0 < k < {10}^7 0<k<107;
对于 100 % 100\% 100% 的数据, 1 < n < 10 6 1 < n < {10}^6 1<n<106, 0 < m < n 0 < m < n 0<m<n, 0 ≤ x ≤ n 0 \le x \le n 0≤x≤n, 0 < k < 10 9 0 < k < {10}^9 0<k<109。
Scratch实现
后续
接下来我会不断用scratch来实现信奥比赛中的算法题、Scratch考级编程题实现、白名单赛事考题实现,感兴趣的请关注,我后续将继续分享相关内容