PTA 7-16 求符合给定条件的整数集

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

题解:

objectivec 复制代码
#include <stdio.h>

int main()
{
    int num = 0;
    scanf("%d", &num);
    int arr[4] = {num, num + 1, num + 2, num + 3};
    int cnt = 0; // 计数
    for(int i = 0; i < 4; i++) // 这是控制数据位的 -- 百位
    {
        for(int j = 0; j < 4; j++) // 这是控制数据位的 -- 十位
        {
            for(int k = 0; k < 4; k++) // 这是控制数据位的 -- 个位
            {
                if(i != j && i != k && j != k) // 防止数据重复
                {
                    cnt++;
                    if(0 == cnt % 6) // 每6个数据就换行
                        printf("%d%d%d\n", arr[i], arr[j], arr[k]);
                    else
                        printf("%d%d%d ", arr[i], arr[j], arr[k]);
                }
            }
        }
    }

    return 0;
}
相关推荐
玖玥拾41 分钟前
LeetCode 125 验证回文串
算法·leetcode
xu_wenming5 小时前
嵌入式软件架构中的6种解耦艺术
c语言·驱动开发·嵌入式硬件·架构
「QT(C++)开发工程师」6 小时前
C++ 11 常用for循环
开发语言·c++
我还记得那天6 小时前
0 初识C++
开发语言·c++
FfHUCisI7 小时前
Go 编译过程全景
开发语言·后端·golang
FfHUCisI7 小时前
Golang 语法分析与 AST:Parser 与 go/ast
开发语言·后端·golang
Asize7 小时前
146. LRU 缓存
算法
Asize7 小时前
543. 二叉树的直径
算法
lemon_sjdk8 小时前
ObjectProperty
java·开发语言·算法