洛谷 P1965 转圈游戏

2019-09-17 09:51:01来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

洛谷 P1965 转圈游戏

目录

  • 题目
  • 思路
  • $Code$

题目

P1965 转圈游戏

思路

数论。题目就是让你判断一下第$x$个人走了$m \times 10^k$步之后到了哪里。总共走的步数为$m \times 10^k$直接走肯定会TLE,对$n$取模之后再走就好了。

$Code$

#include<iostream>
#include<cstring>
#include<string>
#include<cstdio>
#include<algorithm>
#define int long long
using namespace std;
int n,m,k,x;
int qpow(int a,int b,int mod){
    int ans=1,base=a;
    while(b){
        if(b&1) ans=ans*base%mod;
        base=base*base%mod;
        b>>=1;
    }
    return ans;
}
inline void read(int &T){
    int x=0;bool f=0;char c=getchar();
    while(c<'0'||c>'9'){if(c=='-')f=!f;c=getchar();}
    while(c>='0'&&c<='9'){x=x*10+c-'0';c=getchar();}
    T=f?-x:x;
}

signed main(){
    read(n),read(m);
    read(k),read(x);
    m%=n;
    int qwq=qpow(10,k,n);
    int ans=m*qwq%n;
    while(ans--){
        x++;
        if(x==n) x=0;
    }
    cout<<x<<endl;
    return 0;
}

原文链接:https://www.cnblogs.com/poi-bolg-poi/p/11488213.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:QRowTable表格控件(四)-效率优化之-优化数据源

下一篇:c++递归函数