poj2773求第K个与m互质的数
来源:互联网 发布:沙皇尼古拉一世数据 编辑:程序博客网 时间:2024/05/22 17:12
//半年前做的,如今回顾一下,还是有所收货的,数的唯一分解,.简单题。
#include<iostream>#include<cstring>using namespace std;int a[1000001];int p[1000000]; //用a来筛去m的唯一分解后的质因子及其倍数,流下就是与其互质的数。int main(){ int m,k; while(cin>>m>>k) { memset(a,0,sizeof(a)); memset(p,0,sizeof(p)); int mm=m; for(int i=2;i<=mm;i++) //此处mm即可 { if(mm%i==0) { for(int j=i;j<=m;j+=i) //筛去 a[j]=1; while(mm%i==0)mm/=i; //除掉 } } int t=1; //t记录有多少个, for(int i=1;i<=m;i++) { if(a[i]==0)p[t++]=i; //p[i]记录第i个互质数(1--m) } t--; //1--m内有t个,那么m--2m,2m--3m....必然也有t个!每层相差m。 if(k%t==0)cout<<p[t]+m*(k/t-1)<<endl;//考虑特殊位子。 else cout<<m*(k/t)+p[k%t]<<endl; } return 0;}
0 0
- poj2773求第K个与m互质的数
- poj 2773 容斥原理求第k个与m互质的数
- POJ 2773 Happy 2006(求第k个与m互素的数)
- 求m个区间中第k小的数
- BOJ 2773 第K个与m互质的数
- poj 2773 Happy 2006(求第k个与n互质的数)
- POJ 2773 Happy 2006(求第k个和m互素的数/欧拉函数)
- 求第K个最大的数
- HDU 3388 与m,n 互质的第k个整数
- Home_W的超级数学题(第k个和m互素的数
- 求数组中第K个大小的数
- boj_420_求第k个最小数
- 求二叉树第m层上的第K个结点的值
- Google算法题:M-求二叉搜索树的第K小的数
- 求在一组N个的数中找出第K个最大数
- 求第K大的数~~
- 求第k小的数
- Java 求第K小的数
- 正三角形外接圆面积
- IWN A2410 wapi AP快速配置方法
- Zend Framework配置:Hello World
- 安卓 4.3 no such colum
- 字符串匹配:KMP算法
- poj2773求第K个与m互质的数
- AlertDialog对话框
- JAVA基础②
- 唉,程序员要是自学能力不行就等死吧!
- vs2013代码搜索的插件(Bing Code Search)
- ZOJ 2165 Red and Black
- windows平台WorkBench远程连接MySQL失败
- Oracle中协议适配器错误
- Android三种解析XML方式