1002: 级数求和

来源:互联网 发布:mac安装office2013 编辑:程序博客网 时间:2024/06/05 18:51

1002: 级数求和

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 51  Solved: 36
[Submit][Status][Web Board][Edit] [TestData]

Description

已知:Sn= 1+1/2+1/3+…+1/n。显然对于任意一个整数K,当n足够大的时候,Sn大于K。
现给出一个整数K(1<=k<=15),要求计算出一个最小的n;使得Sn>K。

Input

键盘输入 k

Output

屏幕输出 n

Sample Input

1

Sample Output

2

#include "stdio.h"#include "stdlib.h"#include "math.h"#define max 10int total[1000];//组合的所有int indexALL=0;long long sushu[100008];int sushu_index=2;void sushubiao(){    int flag;    sushu[0]=2;    sushu[1]=3;        //素数打表    for(int i=5;i<max;i=i+2){        flag=1;                for(int j=2;j<=sqrt(i);j++){            if(i%j==0){                flag=0;                break;            }        }                if(flag==1){           //  printf("//////zheli2///\n");            sushu[sushu_index]=i;            sushu_index++;        }            }        }void ALLsort(int num[],int temp[],int start,int end,int index,int k){        if(index==k){        for(int i=0;i<k;i++){            total[indexALL]+=temp[i];        }        indexALL++;        return;    }        //if(start+(k-index)>end)return;//表示不够组合那么多个    temp[index]=num[start];    ALLsort(num,temp,start+1,end,index+1,k);//即这个组合选择了这个数    ALLsort(num,temp,start+1,end,index,k);    }int issushu(int n){        for(int i=0;i<sushu_index;i++){        if(n==sushu[i]){            return 1;        }    }        return 0;}int main(){   // printf("//////zheli///\n");    freopen("/Users/qigelaodadehongxiaodi/Desktop/data1.txt", "r", stdin);    //这个不理,是用来方便输入输出的东西,利用文本输入流来读取数据    //提交代码的时候记得注销这条语句        int n,k;    int num[1000];    int temp[1000];        scanf("%d %d",&n,&k);    for(int i=0;i<n;i++){        scanf("%d",&num[i]);    }        // printf("//////zheli///\n");    sushubiao();//素数打表 //  printf("//////zheli///\n");        ALLsort(num,temp,0,n-1,0,k);//打表,得到全排列,在数组total中,下表为indexALL                        int cnt=0;    for(int i=0;i<indexALL;i++){        printf("%d\n",total[i]);       // cnt+=issushu(total[i]);    }                    printf("%d\n",n);    return 0;}


0 0
原创粉丝点击