zoukankan      html  css  js  c++  java
  • 7-16 求符合给定条件的整数集(15 分)

    给定不超过6的正整数A,考虑从A开始的连续4个数字。请输出所有由它们组成的无重复数字的3位数。

    输入格式:

    输入在一行中给出A。

    输出格式:

    输出满足条件的的3位数,要求从小到大,每行6个整数。整数间以空格分隔,但行末不能有多余空格。

    输入样例:

    2
    

    输出样例:

    234 235 243 245 253 254
    324 325 342 345 352 354
    423 425 432 435 452 453
    523 524 532 534 542 543

    解题思路:
    这道题提供两个思路:

      1. 利用 Continue 语句,及时跳出不符合条件的情况
        利用了 continue 语句,从而使得进入 for 循环经条件判断后直接跳出来进行下一次循环。
      2. 更简化的算法
        比起上面的算法,更具技巧性。上面的算法按照一般的逻辑去实现,而此算法更好地利用了 for 循环的特性。
        #include <stdio.h>  
        int main()  
        {  
            int start;  
            scanf("%d", &start);  
            int end;  
            int n = 0;  
            end = start + 4;  
            for(int i = start; i<end; i++)
            {  
                    for(int j = start; j<end; j++)
                    {  
                            if(i == j) continue;  
                            for(int k = start; k<end; k++)
                            {  
                                 if(k == j) continue;  
                                 if(k == i) continue;  
                                 n++;  
                                 if(n%6)
                                 {  
                                     printf("%d ", i*100+j*10+k);  
                                 }else
                                 {  
                                     printf("%d
        ", i*100+j*10+k);  
                                 }  
                            }  
                    }  
            }  
        }  
        #include<stdio.h> // 第二种算法
        
        int main()
        {
            int a,x,y,z;
            scanf("%d", &a);
            int count = 0;
            
            for (x=a;x<a+4;x++){
                for (y=a;y<a+4;y++){
                    for (z=a;z<a+4;z++){
                        if (x!=y && x!=z && y!=z) {                 
                                printf("%d%d%d", x, y, z);
                                count++;
                                if ( count%6==0 ) {
                                    printf("
        ");
                                } else {
                                    printf(" ");
                                }                   
                        }
                            
                    }
                }           
            } 
            return 0; 
        }
  • 相关阅读:
    xgboost
    GBDT 梯度提升决策树简述
    minimal pairs
    Describe your hometown
    英语短句
    英汉翻译
    英语音译词
    power的读音
    英语口语(英语词根与单词的说文解字(李平武 2008版)读书笔记)
    Jar包转成Dll的方式(带嵌套的jar也能做)
  • 原文地址:https://www.cnblogs.com/2228212230qq/p/8035482.html
Copyright © 2011-2022 走看看