#include <iostream>
#include <cstdio>
#include <algorithm>
#include <cstring>
#include <cctype>
#include <cmath>
#include <sstream>
#include <vector>
using namespace std;
#define REP(i,a,b) for(int i=a;i<(int)b;i++)
#define REPD(i,a,b) for(int i=a;i>=(int)b;i--)
#define min4(a,b,c,d) min(min(a,b),min(c,d))
int a[5850];
int main(int argc, char const *argv[])
{
// freopen("input.in","r",stdin);
int n;
int p,p2,p3,p5,p7;
a[1]=1; p=p2=p3=p5=p7=1;
while(p<=5850) {
a[++p]=min4(a[p2]*2,a[p3]*3,a[p5]*5,a[p7]*7);
if(a[p]==a[p2]*2) p2++;
if(a[p]==a[p3]*3) p3++;
if(a[p]==a[p5]*5) p5++;
if(a[p]==a[p7]*7) p7++;
}
while(scanf("%d",&n)==1&&n){
printf("The %d",n);
if(n%10==1&&n%100!=11)cout<<"st ";
else if(n%10==2&&n%100!=12)cout<<"nd ";
else if(n%10==3&&n%100!=13)cout<<"rd ";
else cout<<"th ";
printf("humble number is %d.\n", a[n]);
}
return 0;
}
HDU 1058 Humble Numbers -
最新推荐文章于 2021-05-23 11:01:18 发布