惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Martin Fowler
Martin Fowler
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
博客园 - 聂微东
IT之家
IT之家
GbyAI
GbyAI
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Y
Y Combinator Blog
博客园 - 【当耐特】
The Cloudflare Blog
宝玉的分享
宝玉的分享
罗磊的独立博客
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
V
Visual Studio Blog
小众软件
小众软件
博客园_首页
Last Week in AI
Last Week in AI
J
Java Code Geeks
V
V2EX
雷峰网
雷峰网
Apple Machine Learning Research
Apple Machine Learning Research
阮一峰的网络日志
阮一峰的网络日志
腾讯CDC
博客园 - 司徒正美
Engineering at Meta
Engineering at Meta
The GitHub Blog
The GitHub Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
D
DataBreaches.Net
博客园 - 三生石上(FineUI控件)
MyScale Blog
MyScale Blog
云风的 BLOG
云风的 BLOG
The Register - Security
The Register - Security
M
MIT News - Artificial intelligence
Microsoft Azure Blog
Microsoft Azure Blog
T
The Blog of Author Tim Ferriss
N
Netflix TechBlog - Medium
F
Full Disclosure
B
Blog
H
Help Net Security
C
Check Point Blog
WordPress大学
WordPress大学
人人都是产品经理
人人都是产品经理
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Jina AI
Jina AI
酷 壳 – CoolShell
酷 壳 – CoolShell
Blog — PlanetScale
Blog — PlanetScale
L
LangChain Blog
P
Proofpoint News Feed
D
Docker
Microsoft Security Blog
Microsoft Security Blog

博客园 - saintqdd

hdu 1102 pku 2421 解题报告 pku 2777 Count Color 解体报告 石子合并问题 nkoj1139和乘积最大那题一样. A Tour in Loquat Orchard (FZU 2007 ICPC Qualification Round I tzw) 最大黑区域 滑雪 今天碰到了一个很诡异的题,Alphacode (zoj 2202) 这两天经常碰到dp题,就写了一个0-1背包 实训以来,到这里的次数少了! 郁闷,乘积最大那题WA原来只是因为我用了pow函数引起的! Smith Number POJ强烈推荐50题 JOJ 2391 words POJ 1014 三十分钟掌握STL STL学习小记 POJ1006,中国剩余定理 POJ1003,简单题
一道经典题,humble number
saintqdd · 2007-08-30 · via 博客园 - saintqdd

相信大家都知道什么是humble number.但我还是简短介绍一下,假设一个质数集合{2,3,5,7...},求一个整数列,他们的共同属性是所有的因子都是那个质数集合里的。现在问题是求给定的第N个这样的整数。如果质数只有3个或4个那么简单的搜索可能就行了,但是当数量很多时就会很耗时,所以可采用下面的方法。

#include<stdio.h>
int main(){
  int h[5842];//表示所求的整数的个数
  int pindex[4]={0};//质数索引
  int prim[4]={2,3,5,7};//质数数组
  int i,j,min;
  h[0]=1;
  for(i=1;i<5842;i++){
    j=0;
    while(j<4){
      if(h[pindex[j]]*prim[j]<=h[i-1])
        pindex[j]++;
      j++;
    }
    min=2000000001;
    for(j=0;j<4;j++){
      if(h[pindex[j]]*prim[j]<min)
        min=h[pindex[j]]*prim[j];
    }
    h[i]=min;
  }
  int n;
  while(scanf("%d",&n)&&n!=0){
    if(n%10==1&&n%100!=11)
      printf("The %dst humble number is %d."n",n,h[n-1]);
    else if(n%10==2&&n%100!=12)
      printf("The %dnd humble number is %d."n",n,h[n-1]);
    else if(n%10==3&&n%100!=13)
      printf("The %drd humble number is %d."n",n,h[n-1]);
    else
      printf("The %dth humble number is %d."n",n,h[n-1]);
  }
}