POJ 1619 EKG Sequence
来源:互联网 发布:技术服务咨询平台软件 编辑:程序博客网 时间:2024/06/07 19:40
公因子一定是 前面那个数中,最大的素因子
#include <iostream>#include <cstdio>#include <cstdlib>#include <cstring>#include <algorithm>#define A system("pause")using namespace std;const int maxn=1000000+5;inline void debug(){ printf("where is wrong?\n");}inline int max(int a,int b){ return a>b?a:b;}inline int min(int a,int b){ return a<b?a:b;}int res[maxn]={0};int a[maxn];int b[maxn]={0};inline void make_table(){ int i,j,n,cur,k,an,p; res[1]=1; res[2]=2; for(i=0;i<maxn;i++) a[i]=i; a[2]=4; for(i=2;i<maxn;i++) { if(b[i]==0) { for(j=1;i*j<maxn;j++) { if(b[i*j]==0) b[i*j]=i; } } } cur=2; for(n=2;n<maxn;n++) { k=cur; cur=maxn; while(k!=1) { p=b[k]; while(res[a[p]]!=0&&a[p]+p<maxn)//更新a[] a[p]+=p; cur=cur>a[p]?a[p]:cur; while(k%p==0) //去除k的最小因子,继续比较 k=k/p; } res[cur]=n+1; }}int main(){ int n; make_table(); while(scanf("%d",&n)&&n) { printf("The number %d appears in location %d.\n",n,res[n]); } return 0;}
- POJ 1619 EKG Sequence
- POJ 1619 EKG Sequence 笔记
- POJ 1619 EKG Sequence(EKG数列 ,数据处理技巧)
- Sicily 1038. EKG Sequence
- Sequence Poj
- Codeforces 316B2 EKG
- POJ 1019 Number Sequence
- POJ 1141 Brackets Sequence
- POJ 1141 Brackets Sequence
- Brackets Sequence--poj--1141
- POJ 1019 Number Sequence
- poj 1141 Brackets Sequence
- poj 1019 Number Sequence
- poj 1141 Brackets Sequence
- poj 1019 Number Sequence
- poj 2478 Farey Sequence
- poj 2478 Farey Sequence
- POJ 1141 Brackets Sequence
- C++ STL:vector和list
- storm简介
- POJ 1617 Crypto Columns
- 1027. MJ, Nowhere to Hide题解
- 20个有趣的linux命令
- POJ 1619 EKG Sequence
- linux下iptables防火墙配置笔记
- 好站收集中
- CCProxy
- 分享:centos关闭iptables防火墙的方法
- 关于闭包要注意的几点问题
- 网络流与线性规划24题01飞行员配对方案问题
- linux中重定向及管道
- heX:用HTML5和Node.JS开发桌面应用