zoukankan      html  css  js  c++  java
  • AC日记——三连击 洛谷 P1008

    题目背景

    本题为提交答案题,您可以写程序或手算在本机上算出答案后,直接提交答案文本,也可提交答案生成程序。

    题目描述

    将1,2,…,9共9个数分成三组,分别组成三个三位数,且使这三个三位数构成1:2:3的比例,试求出所有满足条件的三个三位数。

    输入输出格式

    输入格式:

    木有输入

    输出格式:

    若干行,每行3个数字。按照每行第一个数字升序排列。

    输入输出样例

    输入样例#1:
    
    
    输出样例#1:
    192 384 576
    * * *
    ...
    * * *
    (输出被和谐了)

    思路:

      搜索;

      水到炸。

    来,上代码:

    #include <cstdio>
    #include <cstring>
    #include <iostream>
    
    using namespace std;
    
    int ans[10];
    
    bool if_[10];
    
    void dfs(int now)
    {
        if(now==7)
        {
            int pos=ans[1]*100+ans[2]*10+ans[3];
            int pos_=ans[4]*100+ans[5]*10+ans[6];
            if(pos*2!=pos_) return ;
        }
        if(now==10)
        {
            int pos=ans[1]*100+ans[2]*10+ans[3];
            int pos_=ans[7]*100+ans[8]*10+ans[9];
            if(pos*3!=pos_) return ;
            cout<<ans[1]<<ans[2]<<ans[3]<<' ';
            cout<<ans[4]<<ans[5]<<ans[6]<<' ';
            cout<<ans[7]<<ans[8]<<ans[9]<<endl;
            return ;
        }
        for(int i=1;i<=9;i++)
        {
            if(!if_[i])
            {
                if_[i]=true;
                ans[now]=i;
                dfs(now+1);
                if_[i]=false;
            }
        }
    }
    
    int main()
    {
        dfs(1);
        return 0;
    }
  • 相关阅读:
    scrollTop
    ……
    放下
    值得纪念的一天
    php新手上路(六)
    image map
    文字多出用点代替
    js formatter
    感谢,今天刚申请了博客园,
    接口的作用
  • 原文地址:https://www.cnblogs.com/IUUUUUUUskyyy/p/6516507.html
Copyright © 2011-2022 走看看