转圈游戏
来源:互联网 发布:亚马逊标题优化工具 编辑:程序博客网 时间:2024/04/28 03:53
2554: 转圈游戏
Time Limit:2000MS Memory Limit:65536KBTotal Submit:98 Accepted:23 Page View:31
Submit Status Discuss
Description
n 个小伙伴(编号从 0 到 n-1)围坐一圈玩游戏。按照顺时针方向给 n 个位置编号,从 0 到 n-1。最初,第 0 号小伙伴在第 0 号位置,第 1 号小伙伴在第 1 号位置,……,依此类 推。
游戏规则如下:每一轮第 0 号位置上的小伙伴顺时针走到第 m 号位置,第 1 号位置小伙伴走到第 m+1 号位置,……,依此类推,第n − m号位置上的小伙伴走到第 0 号位置,第n-m+1 号位置上的小伙伴走到第 1 号位置,……,第 n-1 号位置上的小伙伴顺时针走到第m-1 号位置。
现在,一共进行了 10k 轮,请问 x 号小伙伴最后走到了第几号位置。
Input
输入共 1 行,包含 4 个整数 n、m、k、x,每两个整数之间用一个空格隔开。
Output
输出共 1 行,包含 1 个整数,表示 10k 轮后 x 号小伙伴所在的位置编号。
10 3 4 5
5
Hint
对于 30%的数据,0 < k < 7; 对于 80%的数据,0 < k < 107;对于 100%的数据,1 < n < 1,000,000,0 < m < n ,0 ≤ x ≤ n,0 < k < 109。
Source
NOIP2013提高组
#include <iostream>#include<cstdio>#include<cstring>using namespace std;typedef long long ll;ll solve(ll a,ll n,ll mod){ ll res = 1; ll temp = a; for(;n;n=n/2) { if(n%2==1) res=(res*temp)%mod; temp = (temp%mod)*(temp%mod)%mod; } return res;}int main(){ ll n,m,k,x; scanf("%lld%lld%lld%lld",&n,&m,&k,&x); ll ans=solve(10,k,n); ans=(ans*m+x)%n; printf("%lld\n",ans); return 0;}
0 0
- 转圈游戏
- 转圈游戏
- 转圈游戏
- 转圈游戏
- 转圈游戏
- wikioi 3285 转圈游戏
- wikioi3285 转圈游戏
- Wikioi P3285 转圈游戏
- NOIP2013 转圈游戏
- 转圈游戏NOIP2013
- NOIP 2013 转圈游戏
- NOIP2013 转圈游戏
- NOIP2013转圈游戏
- 洛谷 P1965 转圈游戏
- NOIP 2013 转圈游戏
- noip2013转圈游戏
- 洛谷 P1965 转圈游戏
- 洛谷1965 转圈游戏
- 数组存储引用数据类型内存分析图
- Tarjan算法求强连通分量总结
- view的滑动(续)
- ACM知识点 之 贪心(1)理论初探
- h5 video
- 转圈游戏
- Spring MVC框架原理图
- Hibernate总结(四)--session的产生方式和一对多的关系映射
- ddd
- linux c语言的格式化输入输出
- 【Creator】学习笔记
- DAY7——液晶显示
- cocos creator配置表的添加
- openwrt mjpg_streamer 拍照功能