• 尺子的刻度


    一根29cm长的尺子,只允许在它上面刻7个刻度。若要用它能测量出1~ 29cm的各种整长度,刻度应如何选择?

    #include<stdio.h>
    #include<math.h>
    check(int b,int c,int d,int e,int f,int g,int h)
    {
        int refer[30] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29};
        int a[9];
        int j,k,l;
        a[0] = 0;
        a[1] = b;
        a[2] = c;
        a[3] = d;
        a[4] = e;
        a[5] = f;
        a[6] = g;
        a[7] = h;
        a[8] = 29;
        int beta[9];//构建二维图,计算出之间的差值。
        for (int i = 0; i<9; i++)
            beta[i] = a[i];
        for (j = 0; j<9; j++)
            for (k = j+1; k<9 ; k++)
                for (l = 0; l<30; l++)
                    if(beta[k] - a[j] == refer[l])
                        refer[l] = 30;
        int count = 0;
        for (int m = 0; m<30; m++)
            if(refer[m] == 30)
                count += 1;
        if (count == 29)
            return 1;
        else
            return 0;
    }
    
    
    int main()
    {
        int a = 0,b,c,d,e,f,g,h,i = 29;
        int count = 0;
        for (b = a+1;b<29; b++)
            for (c = b+1; c<29; c++)
                for (d = c+1; d<29; d++)
                    for (e = d+1; e<29; e++)
                        for (f = e+1; f<29; f++)
                            for (g = f+1; g<29; g++)
                                for (h = g+1; h<29; h++) //循环太多,建议改进。。。
                                    if (check(b,c,d,e,f,g,h) == 1)
                                    {
                                        printf("%d %d %d %d %d %d %d %d %d
    ", a,b,c,d,e,f,g,h,i);
                                        count += 1;
                                    }
        printf("add up to = %d", count);
    }
    
    
  • 相关阅读:
    python条件判断之直接加数字
    pythontip题目解答
    twitter api取出的日期格式化
    MySQL Archive存储引擎
    Python Json序列化
    Python 装饰器
    Python 匿名函数
    Python 函数
    Python 字符编码
    Python 文件操作
  • 原文地址:https://www.cnblogs.com/zhengjm/p/13342149.html
Copyright © 2020-2023  润新知