多校第三场:hdu 4320(小数的进制转换,有限小数的条件)
来源:互联网 发布:新东方网络课 编辑:程序博客网 时间:2024/06/07 07:19
题意: 给出A和B,一有限小数的A进制数转换成B进制数也是有限小数的判定。
我觉得如果进制转换做的好点的话,这种题应该不难。
解法:一个小数的A 进制可以表示为:1/(A^1)+1/(A^2)+1/(A^3).....转换成B进制就是不断的乘B直到为0;(1/(A^1)+1/(A^2)+1/(A^3).....)*B^m,进一步化简,要是结果为有限小数,则B^m/(A^n)必须整除,所以A中的质因子在B中都要出现。
#include <iostream>#include <cstring>#include <cstdio>using namespace std;long long num[1000009];long long pri[1000004];int k=1;void prim(){ memset(num,0,sizeof(num)); k=1; for(int i=2;i<=500000;i++) { if(num[i]==0) { pri[k++]=i; for(int j=i*2;j<=1000004;j+=i) num[j]=1; } }}int main(){ prim(); int cas; cin>>cas; long long a,b; int ca=1; while(cas--) { cin>>a>>b; cout<<"Case #"<<ca++<<": "; int flag=1; for(int i=1;i<=k&&(pri[i]*pri[i]<=a);i++) { if(a%pri[i]==0) { while(a%pri[i]==0) a/=pri[i]; if(b%pri[i]!=0) { flag=0; } } } if(b%a!=0)flag=0; if(flag==1) cout<<"YES"<<endl; else cout<<"NO"<<endl; } return 0;}
- 多校第三场:hdu 4320(小数的进制转换,有限小数的条件)
- 小数的进制转换
- HDU 多校第三场
- 小数的进制转换方法
- 多校第三场:hdu(4323:编辑距离算法)
- HDU 5317(2015多校第三场1002)
- hdu 4628 Pieces 多校第三场
- hdu 5317 多校第三场
- 2016多校第三场 HDU 5755
- 数字间的转换(进制转换、小数化分数)
- C++ 十进制'纯'小数转换为任意进制的小数
- hdu 4937 Lucky Number(数学题 进制转换)2014多校训练第7场
- 条件随机场入门(二) 条件随机场的模型表示
- java 2 带有小数的进制转换
- 百练之小数的进制转换
- 多校第三场
- 多校第三场
- 小数进制转换
- 博弈知识汇总
- 从顶层开始逐层打印二叉树节点数据
- 谁能捱过“沉寂期”?
- Vim 的一些配置
- 运算符的重载及调用方式
- 多校第三场:hdu 4320(小数的进制转换,有限小数的条件)
- C# 多线程基础,仅以此心得献给那些渴望学习多线程的朋友
- linux下安装hadoop-2.0.0-alpha(双namenode federation)安装过程整理
- C#向共享文件夹上传及下载文件
- VC实现查找纯真数据库
- 树状数组 经理的烦恼
- SQL ordered by Version Count
- ASP.NET MVC - 漫谈ActionMethodDispatcher
- 關于在WIN32調用一些Zw系列的文件操作函數.