POJ3696【欧拉函数+欧拉定理】
题意:
求最小T,满足L的倍数且都由8组成,求长度;
思路:
很强势的福利:点
图片拿出去食用更优
//#include<bits/stdc++.h>
#include<cstdio>
#include<math.h>
#include<string.h>
#include<algorithm>
using namespace std;
typedef long long LL; LL eluer(LL n)
{
LL res=n,a=n;
for(LL i=2;i*i<=a;i++)
if(a%i==0)
{
res=res/i*(i-1);
while(a%i==0)
a/=i;
}
if(a>1) res=res/a*(a-1);
return res;
} LL multi(LL x,LL y,LL mod)
{
LL ans=0;
while(y)
{
if(y&1) ans=(ans+x)%mod;
x=(x<<1)%mod;
y>>=1;
}
return ans;
} LL quickmul(LL x,LL g,LL mod)
{
LL ans=1;
while(g)
{
if(g&1) ans=multi(ans,x,mod)%mod;
x=multi(x,x,mod)%mod;
g>>=1;
}
return ans;
} int main()
{
int cas=1;
LL L,A,B,res,ans;
while(~scanf("%lld",&L)&&L)
{
A=L/__gcd(8LL,L);
printf("Case %d: ",cas++);
if(__gcd(10LL,9*A)!=1)
puts("0");
else
{
res=eluer(9*A);
LL q=sqrt((double)res);
bool flag=false;
for(LL i=1;i<=q;i++)
{
if(res%i==0&&quickmul(10,i,9*A)==1)
{
ans=i;
flag=true;
break;
}
}
if(!flag)
{
for(LL i=q;i>=1;i--)
{
if(res%i==0&&quickmul(10,res/i,9*A)==1)
{
ans=res/i;
break;
}
}
}
printf("%lld\n",ans);
}
}
return 0;
}
POJ3696【欧拉函数+欧拉定理】的更多相关文章
- 欧拉函数&&欧拉定理
定义和简单性质 欧拉函数在OI中是个非常重要的东西,不知道的话会吃大亏的. 欧拉函数用希腊字母φ表示,φ(N)表示N的欧拉函数. 对φ(N)的值,我们可以通俗地理解为小于N且与N互质的数的个数(包含1 ...
- 欧拉函数&欧拉定理&降幂 总结
欧拉函数&欧拉定理&降幂 总结 标签:数学方法--数论 阅读体验:https://zybuluo.com/Junlier/note/1300214 这年头不总结一下是真的容易忘,老了老 ...
- HDU4549 M斐波那契数列 矩阵快速幂+欧拉函数+欧拉定理
M斐波那契数列 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Total Sub ...
- Super A^B mod C (快速幂+欧拉函数+欧拉定理)
题目链接:http://acm.fzu.edu.cn/problem.php?pid=1759 题目:Problem Description Given A,B,C, You should quick ...
- poj3696 欧拉函数引用
不知道错在哪里,永远T /* 引理:a,n互质,则满足a^x=1(mod n)的最小正整数x0是φ(n)的约数 思路:求出d=gcd(L,8) 求出φ(9L/d)的约数集合,再枚举约数x,是否满足10 ...
- poj3696 快速幂的优化+欧拉函数+gcd的优化+互质
这题满满的黑科技orz 题意:给出L,要求求出最小的全部由8组成的数(eg: 8,88,888,8888,88888,.......),且这个数是L的倍数 sol:全部由8组成的数可以这样表示:((1 ...
- 2^x mod n = 1(欧拉定理,欧拉函数,快速幂乘)
2^x mod n = 1 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Tot ...
- 「POJ3696」The Luckiest number【数论,欧拉函数】
# 题解 一道数论欧拉函数和欧拉定理的入门好题. 虽然我提交的时候POJ炸掉了,但是在hdu里面A掉了,应该是一样的吧. 首先我们需要求的这个数一定可以表示成\(\frac{(10^x-1)}{9}\ ...
- 数论的欧拉定理证明 & 欧拉函数公式(转载)
欧拉函数 :欧拉函数是数论中很重要的一个函数,欧拉函数是指:对于一个正整数 n ,小于 n 且和 n 互质的正整数(包括 1)的个数,记作 φ(n) . 完全余数集合:定义小于 n 且和 n 互质的数 ...
随机推荐
- Struts2 实例(转载)
一.准备工作及实例 1.解压struts-2.1.6-all.zip apps目录:struts2自带的例子程序docs目录:官方文档. lib 目录:存放所有jar文件. Src 目录:源文件存放地 ...
- Drawing Images and Text
using System;using UIKit;using Foundation;using CoreGraphics;namespace GraphicsAnimation{ public cla ...
- WPF控件模板和数据模板 - 醉意人间
来自:http://www.th7.cn/Program/WPF/2011/12/21/51676.shtml ControlTemplate用于描述控件本身. 使用TemplateBinding来绑 ...
- mvn 添加本地jar包
- EasyPlayer安卓Android流媒体播放器实现直播过程中客户端快照功能
本文转自:http://blog.csdn.net/jyt0551/article/details/56942795 对于一个裸的RTSP URL,存放在播放列表上略显单调与枯燥.大家可以看到Easy ...
- 理解 React,但不理解 Redux,该如何通俗易懂的理解 Redux?
作者:Wang Namelos链接:https://www.zhihu.com/question/41312576/answer/90782136来源:知乎著作权归作者所有.商业转载请联系作者获得授权 ...
- 工作室成员 GitHub 地址集中贴(按发布时间先后排序)
金质行 https://github.com/jinxiaohang/ 金林超 https://github.com/jinlinchao/ 王贤国 https://github.com/ErhuoH ...
- 在图片上加字符-base64转图片-图片转base64
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Android 属性动画ObjectAnimator和ValueAnimator讲解
区别: ObjectAnimator 是直接对某个view进行更改. ValueAnimator 根据 TimeInterpolator 在不断产生相应的数据,来传进view ,view自己做改变. ...
- ubuntu 12.04安装alsa-lib、alsa-utils【转】
1. alsa-lib ./configure sudo make install 注意:默认是安装到/usr/这个目录下面,但是我测试多了多次,安装了alsa-lib之后,系统就没有声音了,也没有找 ...