1-9这9个数字划分成三个3位数,第一个分别是第二、三个的2倍,3倍,用程序划分

简介:

1-9这9个数字划分成三个3位数,第一个分别是第二、三个的2倍,3倍,用程序划分!

代码如下:


#include <stdio.h>
#include <string.h>
/*
* 用visit数组标记1-9这9个数字是否全部用完,且不重复
* 只有当他们全部用完且不重复使用时,和才为9,这样就
*满足条件了
*/
int main()
{
    int i, j, k, x;
    int visit[10], sum = 0;

    for (i = 123; i * 3 <= 987; i++)
    {
        memset(visit, 0, sizeof(int) * 10);

        visit[i / 100] = 1;
        visit[i / 10 % 10] = 1;
        visit[i % 10] = 1;

        j = i * 2;
        visit[j / 100] = 1;
        visit[j / 10 % 10] = 1;
        visit[j % 10] = 1;

        k = i * 3;
        visit[k / 100] = 1;
        visit[k / 10 % 10] = 1;
        visit[k % 10] = 1;

        sum = 0;
        for (x = 1; x <= 9; x++)
            sum += visit[x];
        if (sum == 9)
            printf("a=%d, b=%d, c=%d\n", k, j, i);
    }
    return 0;
}


目录
相关文章
|
4月前
|
算法 大数据 Java
仅用10MB内存,你能从100亿个数中找到中位数吗?
大家好,我是小米,一名热爱技术分享的程序员。今天探讨如何在内存有限(仅10MB)时找到100亿个整数的中位数。面对庞大的数据量(约400GB)及内存限制,我们将采用分治策略:先依据整数的最高二进制位将数据分为非负数与负数两个文件,逐步缩小范围直至能在内存中处理。当内存充足时,可直接加载所有数据并排序找到中位数。这一问题不仅考验算法能力,也是处理大数据时资源管理的关键。
159 13
|
4月前
|
存储 算法 程序员
极限挑战:40亿个非负整数中找到没有出现的数(bit数组)
大家好!我是小米,一名热衷于技术分享的29岁程序员。今天探讨的问题是在40亿个非负整数中找到未出现的数字。直接使用哈希表因内存限制而不可行。本文提出了一种解决方案——利用bit数组。通过标记出现过的数字,最终找出未被标记的位置所对应的数字即为答案。对于更严格的内存限制(如10MB),文章还介绍了分块处理的方法,先统计每个区间的数字数量,找到计数不足的区间后再精确处理。这种算法不仅展示了巧妙利用有限资源的能力,也为实际工程问题提供了解决思路。希望各位读者能从中受益,享受编程带来的乐趣!
66 15
|
7月前
求两个整数的较大值
两幅图片展示,无文字描述。第一张图链接源为:[结果](https://so.csdn.net/so/search?q=%E7%BB%93%E6%9E%9C&spm=1001.2101.3001.7020)。
39 1
求两个整数的较大值
|
7月前
|
存储 负载均衡 算法
负载均衡案例:如何只用2GB内存统计20亿个整数中出现次数最多的整数
负载均衡案例:如何只用2GB内存统计20亿个整数中出现次数最多的整数
112 2
|
机器人 Java 开发工具
生成指定长度的随机数字,用对方法精准提效数10倍!
生成指定长度的随机数字这一函数功能可能在以下情况下被使用:
357. 计算各个位数不同的数字个数
357. 计算各个位数不同的数字个数
357. 计算各个位数不同的数字个数
|
算法 搜索推荐
数组中出现次数超过一半的数字(简单难度)
数组中出现次数超过一半的数字(简单难度)
120 0
L1-006 连续因子 (20 分)
L1-006 连续因子 (20 分)
142 0