vijos-1772,巧妙填数

简介: vijos-1772,巧妙填数

题目描述:


将1,2,⋯ ,91,2,\cdots,91,2,⋯,9共999个数分成三组,分别组成三个三位数,且使这三个三位数构成1:2:31:2:31:2:3的比例。


试求出所有满足条件的三个三位数。

例如:三个三位数192,384,576192,384,576192,384,576满足以上条件。


输入:


无输入。


输出:


需要输出全部结果。每行输出3个数 用空格隔开。按照字典序的顺序输出。


解题思路:


如果数学特别好,你可以直接看出来答案,但是这种题类似于蓝桥杯省赛里的题目,方法有好几种,在这里,我就给大家介绍一种最笨最耗时,同时也是最好理解的一种暴力求解方法,我用9个for循环去对应处理三个三位数(每个for循环对应一个位数,1到9不能重复出现)。 下面我们来看代码:


程序代码:


#include<stdio.h>
int main()
{
  for(int a=1;a<=9;a++)
  {
    for(int b=1;b<=9;b++)
    {
      for(int c=1;c<=9;c++)
      {
        for(int d=1;d<=9;d++)
        {
          for(int e=1;e<=9;e++)
          {
            for(int f=1;f<=9;f++)
            {
              for(int g=1;g<=9;g++)
              {
                for(int h=1;h<=9;h++)
                {
                  for(int i=1;i<=9;i++)
                  {
                    if(a!=b&&a!=c&&a!=d&&a!=e&&a!=f&&a!=g&&a!=h&&a!=i&&b!=c&&b!=d
                    &&b!=e&&b!=f&&b!=g&&b!=h&&b!=i&&c!=d&&c!=e&&c!=f&&c!=g&&c!=h
                    &&c!=i&&d!=e&&d!=f&&d!=g&&d!=h&&d!=i&&e!=f&&e!=g&&e!=h&&e!=i
                    &&f!=g&&f!=h&&f!=i&&g!=h&&g!=i&&h!=i)
                    {
                      if((a*100+b*10+c)*2==(d*100+e*10+f)&&(a*100+b*10+c)*3==(g*100+h*10+i))
                        printf("%d %d %d\n",a*100+b*10+c,d*100+e*10+f,g*100+h*10+i);
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
  return 0;
}


相关文章
|
9月前
|
算法
DAY-7 | 牛客-BM21 寻找旋转数组的最小元素:二分法分治思想真的很可靠
这是一个关于编程题目的摘要:题目是牛客网上的&quot;BM21 旋转数组的最小数字&quot;,要求找到旋转数组中的最小数字。题解介绍了使用二分查找算法来解决此问题,因为其时间复杂度优于暴力搜索的线性时间复杂度。二分查找的核心是通过比较中间元素与右端元素的大小,不断缩小搜索范围,最终找到最小值。代码示例展示了如何实现这个算法。总结中强调了二分查找适用于部分有序数组,并指出了解决这类问题的关键在于理解数组的二段单调性。
53 1
|
9月前
|
算法
2024春晚纸牌魔术原理----环形链表的约瑟夫问题
2024春晚纸牌魔术原理----环形链表的约瑟夫问题
|
9月前
|
存储 算法 vr&ar
☆打卡算法☆LeetCode 160. 相交链表 算法解析
☆打卡算法☆LeetCode 160. 相交链表 算法解析
|
算法 C++
剑指offer(C++)-JZ47:礼物的最大价值(算法-动态规划)
剑指offer(C++)-JZ47:礼物的最大价值(算法-动态规划)
|
机器学习/深度学习 存储 算法
【数据结构与算法篇】手撕八大排序算法之快排的非递归实现及递归版本优化(三路划分)
【数据结构与算法篇】手撕八大排序算法之快排的非递归实现及递归版本优化(三路划分)
250 0
|
算法
经典算法题---链表奇偶重排(好题)&&双指针系列
经典算法题---链表奇偶重排(好题)&&双指针系列
123 0
经典算法题---链表奇偶重排(好题)&&双指针系列
|
存储 算法 索引
【每日挠头算法题】LeetCode 1337. 矩阵中战斗力最弱的 K 行 —— 二分 + 排序 / 堆
【每日挠头算法题】LeetCode 1337. 矩阵中战斗力最弱的 K 行 —— 二分 + 排序 / 堆
131 0
【每日挠头算法题】LeetCode 1337. 矩阵中战斗力最弱的 K 行 —— 二分 + 排序 / 堆
☆打卡算法☆LeetCode 110、平衡二叉树 算法解析
“给定一个二叉树,判断它是否是平衡二叉树。”

热门文章

最新文章