PersonalCorpus 版 (精华区)

15993
2002-05-12 10:39:55
Accepted
1095
C++
00:00.22
428K
Big Guava

#include "stdio.h"

int main()
{
    double s[6000],a,b,c,d;

    int e=0,i,j,k;

    for (a=1;a<=2000000000;a*=2) //Special thanks to Darcy!!
    for (b=a;b<=2000000000;b*=3)
    for (c=b;c<=2000000000;c*=5)
    for (d=c;d<=2000000000;d*=7) s[e++]=d;

    for (i=0;i<e-1;i++) {
        k=i;
        for (j=i+1;j<e;j++) if (s[j]<s[k]) k=j;
        if (k!=i) { a=s[k]; s[k]=s[i]; s[i]=a; }
    }
    scanf("%d\n",&i);
    while(i!=0) {
        j=i%100;
        if ((j>10)&&(j<20)) {
            printf("The %dth humble number is %.0lf.\n",i,s[i-1]);
            scanf("%d\n",&i);
            continue;
        }
        j=i%10;
        switch(j) {
            case 1:printf("The %dst humble number is %.0lf.\n",i,s[i-1]);break;
            case 2:printf("The %dnd humble number is %.0lf.\n",i,s[i-1]);break;
            case 3:printf("The %drd humble number is %.0lf.\n",i,s[i-1]);break;
            default:printf("The %dth humble number is %.0lf.\n",i,s[i-1]);break;
        }
        scanf("%d\n",&i);
    }
}
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.024毫秒