题目链接:

All X

Time Limit: 2000/1000 MS (Java/Others)   

 Memory Limit: 65536/65536 K (Java/Others)

Problem Description
 
F(x,m) 代表一个全是由数字x组成的m位数字。请计算,以下式子是否成立:

F(x,m) mod k ≡ c

 
Input
 
第一行一个整数T,表示T组数据。
每组测试数据占一行,包含四个数字x,m,k,c

1≤x≤9

1≤m≤10^10

0≤c<k≤10,000

 
Output
 
对于每组数据,输出两行:
第一行输出:"Case #i:"。i代表第i组测试数据。
第二行输出“Yes” 或者 “No”,代表四个数字,是否能够满足题目中给的公式。
 
Sample Input
 
3
1 3 5 2
1 3 5 1
3 5 99 69
 
Sample Output
 
Case #1:
No
Case #2:
Yes
Case #3:
Yes
 
题意:
 
 
思路:
 
m个x组成的数可以表示为x*(1+10+10^2+...+10^m-1)=x*(10^m-1)/9;
即x*(10^m-1)/9%k==c?    x*(10^m-1)%(9*k)==9*c?
 
AC代码:
 

//#include <bits/stdc++.h>

#include <iostream>
#include <queue>
#include <cmath>
#include <map>
#include <cstring>
#include <algorithm>
#include <cstdio> using namespace std;
#define Riep(n) for(int i=1;i<=n;i++)
#define Riop(n) for(int i=0;i<n;i++)
#define Rjep(n) for(int j=1;j<=n;j++)
#define Rjop(n) for(int j=0;j<n;j++)
#define mst(ss,b) memset(ss,b,sizeof(ss));
typedef long long LL;
//const LL mod=1e9+7;
const double PI=acos(-1.0);
const int inf=0x3f3f3f3f;
const int N=1e5+;
LL x,m,k,c;
LL mod;
LL fastmod(LL x,LL y)
{
LL ans=,base=x;
while(y)
{
if(y&)ans*=base,ans%=mod;
base*=base;
base%=mod;
y=(y>>);
}
return ans;
}
int main()
{
int t,cnt=;
scanf("%d",&t);
while(t--)
{
printf("Case #%d:\n",cnt++);
scanf("%I64d%I64d%I64d%I64d",&x,&m,&k,&c);
mod=*k;
LL fx=fastmod(,m);
LL ans=(fx*x%mod-x%mod)%mod;
if(ans==*c)printf("Yes\n");
else printf("No\n");
} return ;
}
 

最新文章

  1. App Store有哪些原因会影响app应用上架呢?(分享)
  2. 【转】Eclipse Class Decompiler——Java反编译插件
  3. iFreeThinking - 记录生活,分享思考
  4. 邻接表实现Dijkstra算法以及DFS与BFS算法
  5. c#抽象类相关
  6. ajax请求简写
  7. 用java获取歌曲文件的专辑封面元信息
  8. SVN 代码下载,上传
  9. 漫游Ruby
  10. c语言结构体4之结构体引用
  11. AVR32开发环境搭建
  12. 【最新】让快捷方式 实现相对路径——非.bat方式实现
  13. Linux:系统的基本优化
  14. Mac下的效率工具autojump
  15. 电脑小知识-win10
  16. 每日Scrum(8)
  17. 是否要学点GUI编程
  18. one by one 项目 part 3
  19. From 百度知道 SQLSERVER 字符集排序规则简单说明
  20. SQL语句添加删除修改字段

热门文章

  1. 一个人写的操作系统 - Sparrow OS
  2. 测试rest接口的两个工具使用详解(restclient+soapUI)
  3. Tun/Tap interface tutorial
  4. 也来说说C#异步委托(转)
  5. 用javascript实现简体和繁体字间的转换
  6. IOS 手机助手及越狱助手推荐
  7. 4.3、Libgdx启动类和配置
  8. hdu 5277 YJC counts stars 暴力
  9. little&#39;s law(律特法则)
  10. 微信公共服务平台开发(.Net 的实现)9-------处理二维码