poj 3696 The Luckiest number(欧拉函数)

34、木材在家具制造中的应用 本文详细探讨了木材在家具制造中的应用,从木材的选择、加工技术到设计创新和表面处理等方面进行了全面解析,并结合实际案例分析木材家具的市场趋势与未来发展。文章强调了木材家具在功能性、智能化和环保性方面的潜力,展示了其在现代家居生活中的重要地位。 阅读详情


poj 3696 The Luckiest number


由题有

8*(10^x-1)/9=l*k x,k为正整数

10^x-1=l*9*k/8

令m=l*9/gcd(l,8)有

10^x-1=m*k`(这里可以得出10^x和m是互质的,因为10^x-1不可能有2或5两个约数)

即10^x=1mod(m)

因为10和m互质,则可运用欧拉定理:p^eular(m)=1mod(m)

即10^eular(m)=1mod(m)

于是答案便是求eular(m)的最小满足上式的因子积,通过对eular(m)分解质因数来解决


#include<stdio.h>
#include<string.h>
#define ll long long
ll gcd(ll a,ll b)
{
	return b==0?a:gcd(b,a%b);
}
ll eular(ll n)
{
	ll ans=n;
	for(ll i=2;i*i<=n;i++)
		if(n%i==0)
		{
			ans-=ans/i;
			while(n%i==0) n/=i;
		}
	if(n>1) ans-=ans/n;
	return ans;
}
ll mod;
ll multi(ll a,ll b)
{
	ll ans=0;
	while(b)
	{
		if(b&1) ans=(ans+a)%mod;
		a=a*2%mod;
		b>>=1;
	}
	return ans;
}
ll power_mod(ll a,ll b)
{
	ll ans=1;
	while(b)
	{
		if(b&1) ans=multi(ans,a);
		a=multi(a,a);
		b>>=1;
	}
	return ans;
}
int main()
{
	int cas=1;
	ll l;
	while(scanf("%lld",&l)!=EOF&&l)
	{
		mod=l/gcd(l,8)*9;
		if(gcd(10,mod)!=1)
		{
			printf("Case %d: 0\n",cas++);
			continue;
		}
		ll n=eular(mod),ans=n;
		for(ll i=2;i*i<n;i++)
			if(n%i==0)
			{
				ll cnt=0;
				while(n%i==0)
				{
					cnt++;
					n/=i;
				}
				while(cnt)
				{
					if(power_mod(10,ans/i)%mod==1)
					{
						ans/=i;
						cnt--;
					}
					else break;
				}
			}
			if(n>1) if(power_mod(10,ans/n)%mod==1) ans/=n;
		printf("Case %d: %lld\n",cas++,ans);
	}
	return 0;
}


虚拟机VMware Horizon Client与主机之间建立共享文件夹 因经常需要在虚拟机和主机之间传递一些日常文件,所以建立共享文件夹。 虚拟机中安装的系统为win10,主机中的系统为win10。 步骤: 第一步:先在虚拟机win10中新建文件夹(我重命名为“共享文件夹”),然后右键属性->共享->共享 进去之后点击自己的账户名 然后点共享。操作完成后,再返回属性界面就能看到该文件夹已经共享而且出现了共享链接,记下此链接。 第二步:回到主机桌面->此电脑->最上面计算机->添加一个网络位置- 点击下一步 然后自定义网络位置,下一步,如下图 阅读详情

相关推荐

DBeaver连接ClickHouse保姆级教程:从安装到成功测试(附驱动下载问题解决)

本文提供了一份详细的DBeaver连接ClickHouse实战指南,重点解决了驱动下载失败等常见问题。文章从环境准备、DBeaver安装讲起,详细阐述了手动配置ClickHouse驱动的可靠方案,并逐步指导完成连接配置与测试,最后介绍了基础操作与查询优化技巧,旨在帮助用户高效完成连接并快速上手使用。

pink的博客 879

多旋翼无人机的软着陆,使用稳健的非线性控制和风力建模(Matlab代码实现)

文献来源:摘要:多旋翼系统进行抓取、操作和检查时需要软着陆,以避免任何颠簸;因此,在多旋翼无人机(UAV)下的空气动力学效应下,一次性着陆是至关重要的。HYFLIERS项目中的一个任务是在管道架上进行着陆,主要是测量管道的厚度和腐蚀情况。管道架在着陆阶段由螺旋桨引起的感应气流产生未知干扰。对这个问题进行了两种情况的建模,即在地面和管道架上着陆。地面效应建模比较直接;然而,管道架会给系统建模带来更多的不确定性。空气动力学干扰的来源可能是外部风或者无人机螺旋桨在管道或地面附近引起的干扰。

weixin_61181717的博客 1067

企业数字化转型的 4A 架构指南:从概念解读到 TOGAF 阶段对应

4A企业架构是中国数字化转型实践中总结的简化框架,包含业务、应用、数据和技术四个架构层。它自上而下形成业务驱动应用的指导关系,自下而上构建技术支撑数据的实现路径,与国际标准TOGAF核心内容高度对应。该模型通过统一语言、战略对齐和系统梳理,有效连接业务需求与IT实施,已成为企业架构规划的实用工具。其分层结构清晰展示了从业务目标到技术落地的完整推导链,特别适合中国企业的数字化转型场景。

友莘居士的博客 2174

TLD算法学习之L-K光流法理论篇二

由于之前的L-K光流法对于大运动的跟踪束手无策,然后有人又提出图像金字塔的方法来解决这个问题。通过建立金字塔,在多尺度下计算光流,使得光流的计算的准确性又跨越了一步。         金字塔光流的思想是对每个图像帧向下采样,分别建立多级金字塔,当采样到足够小以后,相邻的图像帧之间的运动将变得很小,以至于可以看成是物体的运动随时间变化很慢的运动情况,这时候就可以用L-K方法计算目标的光流,再将计算

happiness的专栏 4786

Pseudobulk与FindMarkers单细胞差异基因分析实战对比

本文深入对比了单细胞差异基因分析中Pseudobulk与FindMarkers两种主流方法。通过实战演示,详细解析了二者在底层逻辑、数据准备、分析流程及结果解读上的核心差异,并提供了基于不同生物学问题与数据特点的选择策略,帮助研究者做出更精准的分析决策。

weixin_29218963的博客 332

超越图灵机——论人工智能实现的可能性(一)

超越图灵机——论人工智能实现的可能性(一)我认为人工智能是可以实现到逻辑思维这一步的,因为逻辑思维可以完全用字符串来表示,图灵机可以把任意单元置成任意值,在这一点上是完备的,这就足以描述逻辑思维了,所以用图灵机完全可以实现到逻辑思维。当然图灵机会受到哥德尔不完备性的制约,但是逻辑系统也会受到同样的制约,所以我认为完全可以用图灵机实现逻辑思维。那么逻辑思维的本质机理与图灵机是什么关系?逻辑思

太极语言 1万+

POJ3696 The Luckiest number 欧拉函数应用

题目链接:http://poj.org/problem?id=3696 题目大意:对于给定的整数L,找出L能整除最短的全8序列的长度,做为Bob的幸运数字。 分析:我们设幸运数字是x,由题意可知,长度为x全8序列为:8/9 * (10^x-1)=L * p,即(10^x-1)=9 * L * p/8。令m=9 * L/gcd(L,8),则存在p',使9 * L * p/8=m

AC_Gibson的专栏 1465

滑模控制概述

滑模控制概述1.滑模控制概念2.滑模控制原理3.滑模控制设计步骤4.研究现状5.发展趋势5.1自适应滑模变结构控制5.2模糊滑模控制5.3神经网络与滑模控制的结合 1.滑模控制概念   滑模控制(Sliding Mode Control,SMC)是一种特殊类型的变结构控制(Variable Structure Control,VSC),因此又称之为滑模变结构控制,是近年来广泛应用和发展的一种控制方法。滑模控制本质上是一种非线性控制,即控制结构随时间变化而变化。滑模变结构控制是非线性系统中普遍采用的一种分析方

shiyi20190828的博客 2万+

POJ - 3696 The Luckiest number 【欧拉函数】

Description Chinese people think of '8' as the lucky digit. Bob also likes digit '8'. Moreover, Bob has his own lucky numberL. Now he wants to construct his luckiest number which is the minimum amo...

一定要站在自己热爱的生活里闪闪发光 3万+

RK3576 Buildroot 双机 ADB 异常排障实录:同版 `boot.img`,一台可识别一台不可识别

进程在跑”不等于“USB 枚举成功”,adbd存活只是必要不充分条件。生产环境中的全局别名可能反向污染系统脚本。shell 命令替换中的字符串问题,必须做字节级验证(od -tx1相比“改环境规避”,核心脚本对输入做鲁棒处理更可长期维护。

小灰灰的博客 210

[游戏排查] Baldur‘s Gate 3 加载完成即崩溃?五步排查帮你快速定位问题

《博德之门3》加载崩溃问题解决方案:针对游戏进度条走完后闪退的情况,提供五步排查法。首先清除LevelCache缓存(成功率最高),其次检查Mod兼容性,然后切换Vulkan/DX11渲染API,再排查存档损坏问题,最后可删除配置目录(需备份存档)。重点提示Steam验证无法解决此类问题,建议按步骤顺序排查,多数情况下前两步即可解决问题。

技术小甜甜:传播可落地技术,帮助个人和企业降低解决真实场景问题的成本 3261

poj3696The Luckiest number【欧拉函数】

Language: Default The Luckiest number Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 4968   Accepted: 1332 Description Chinese people think of '8' as th

走一步再走一步 779

Unreal 从入门到进阶 之 如何实现Pixel Streaming

Unreal Engine 5 (UE5) 的 Pixel Streaming 是一项基于云端的实时流媒体技术,允许将 UE5 应用的高质量图形渲染结果通过 WebRTC 协议传输到用户的浏览器或轻量级设备,同时将用户输入(如鼠标、键盘、触控)回传到服务器处理。UE的插件相对比较好用,但是就是环境下载总是失败。希望这篇文章对你有所帮助。

TxNet 1369

「POJ3696」The Luckiest number【数论,欧拉函数】

题解 一道数论欧拉函数和欧拉定理的入门好题。 虽然我提交的时候POJ炸掉了,但是在hdu里面A掉了,应该是一样的吧。 首先我们需要求的这个数一定可以表示成(10x−1)9×8\frac{(10^x-1)}{9}\times 89(10x−1)​×8。 那么可以列出一个下面的方程 (10x−1)9×8=L×k\frac{(10^x-1)}{9}\times 8=L\times k9(10x−1)​×...

chhokmah的博客 238

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

POJ - 3696 The Luckiest number 欧拉函数

题目:给你一个数L,找出它的一个倍数x,使得x*L的每一位都是8,输出最小x*L的位数,不存在则输出0 思路:8*(10^k-1)/9=x*L 令r=gcd(8,L),化简 8/r*(10^k-1)=x*(9*L)/r, 因为gcd(8/r,9*L/r)=1, 所以10^k-1=0%(9*L/r) 10^k=1%(9*L/r) 由欧拉函数可以得知有解的条件为gcd(10,9*L/r)

ACVevtor的博客 390

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

POJ 3696 The Luckiest number 欧拉函数 或 BSGS

原题见POJ 3696给一个数L,问至少几个8(如88,8888,88888)可以整数L。若不能,就输出-1.首先把连续的x个8表示成8+8⋅10+8⋅102+...+8⋅10x−1=8(10x−1)10−18+8·10+8·10^2+...+8·10^{x-1}={8(10^x-1)\over 10-1} 若能整除L,则存在y,使得8(10x−1)9=Ly{8(10^x-1)\over 9}=L

Ugly Gardon 1080

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

POJ 3696 The Luckiest number(欧拉函数)

 题意:给出一个数L,现在要求一个数A,使得L|A,并且A的每一位都是8,问A的最少位数是多少。 思路: 代码: #include #include #include #include #include #include #include #include #include #include #include #define inf 0x3f3f3f3f #define Inf 0

绝望的乐园 1373

POJ3696 The Luckiest number【欧拉函数】

题目大意: 给你一个数N,问是否存在L的倍数M,且数M各个位上都由8组成,如果存在多个M,输出最小 的那个,并输出M由几个8组成。 思路: 设长度为x,由题意可知,长度为x的由8组成的数可以被L整除。形式为88…88,由于10^x-1是 长度为x、全部由9组成的数,则(10^x-1)/9*8 = L*k(k倍),即(10^x-1)*8= 9*L*k。 则(10^x-1)*8/gcd(8,L) = 9*L*k/gcd(8,L) 令p = 8/gcd(8,L) q = 9*L/gcd(8,L),则(10^x

程序员充电站(itcharge) 1033

The Luckiest number POJ - 3696(欧拉函数)

The Luckiest number POJ - 3696 题目描述 Chinese people think of ‘8’ as the lucky digit. Bob also likes digit ‘8’. Moreover, Bob has his own lucky number L. Now he wants to construct his luckiest number wh...

FLY_WHITE的博客 245

POJ 3696 The Luckiest Number 【欧拉函数+快速幂】

Description Chinese people think of ‘8’ as the lucky digit. Bob also likes digit ‘8’. Moreover, Bob has his own lucky number L. Now he wants to construct his luckiest number which is the minimum among...

zhaohaibo的博客 448

The Luckiest number POJ - 3696 数学 欧拉函数

Chinese people think of ‘8’ as the lucky digit. Bob also likes digit ‘8’. Moreover, Bob has his own lucky number L. Now he wants to construct his luckiest number which is the minimum among all positiv...

loooooog的博客 212

POJ 3696 The Luckiest Number 欧拉函数

是否存在n能整除的m使m各位都是8。m=89(10x−1)=kn m=\frac{8}{9}(10^x-1) = kn 8⋅10x−1gcd(8,n)=9⋅kngcd(8,n) 8\cdot\frac{10^x-1}{\gcd(8,n)} = 9\cdot\frac{kn}{\gcd(8,n)} 又gcd(8gcd(8,n),ngcd(8,n))=1 gcd\left(\frac{8}{gcd

とある黄鱼のOIブログ 762

The Luckiest number POJ - 3696 (欧拉函数)

Chinese people think of ‘8’ as the lucky digit. Bob also likes digit ‘8’. Moreover, Bob has his own lucky number L. Now he wants to construct his luckiest number which is the minimum among all positive

Coldfresh的博客 476

The Luckiest number POJ3696(欧拉函数)

The Luckiest number Chinese people think of '8' as the lucky digit. Bob also likes digit '8'. Moreover, Bob has his own lucky number L. Now he wants to construct his luckiest number which is the min...

codeswarrior的博客 823

POJ 3696 The Luckiest number(算法竞赛进阶指南,欧拉函数,快速幂)

算法竞赛进阶指南,150页,欧拉函数,快速幂 题目意思: 题目给定一个正整数 L, 问有至少多少个连续的8组成的正整数是 L 的倍数。 书上的思路: 1、 888888 这个式子来表示:k * (10^x - 1) / 9 进而简化:8 * (10^x - 1) / 9 = L * k (k是一个整数) 8 * (10^x - 1) = 9L * k, 假设 d = gcd(8, L), 那么 (10^x - 1) = k * (9L / d), 从而 10^x = 1(mod 9L / d) 书上的引理:

qq_38232157的博客 166

POJ 3696 The Luckiest number(欧拉函数)

题意:给出一个数L,现在要求一个数A,使得L|A,并且A的每一位都是8,问A的最少位数是多少。 思路: 首先要把A转化一下,把A表示成,则(p是一个整数),令,那么就存在一个整数k使得,因此,就是求。同余方程有解的条件是(10,m)=1,简单证明:若(10,m)的素因子为2 or 5,但是和10互质,因此没有2、5的素因子,即方程无解。 通过欧拉公式可以知道,

绝望的乐园 1026
上一篇: hdu 3642 Get The Treasury(扫描线、立方体交)
下一篇: poj 3604 Professor Ben(质因数分解)
yjCola
博客等级 码龄14年 4粉丝 138原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值