• luogu P1618 三连击(升级版)


    题目描述

    将1,2,…,9共9个数分成三组,分别组成三个三位数,且使这三个三位数的比例是A:B:C,试求出所有满足条件的三个三位数,若无解,输出“No!!!”。

    //感谢黄小U饮品完善题意

    输入输出格式

    输入格式:

    三个数,A B C。

     

    输出格式:

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

    输入输出样例

    输入样例#1: 
    1 2 3
    输出样例#1: 
    192 384 576
    219 438 657
    273 546 819
    327 654 981

    乍一看这题目,升不升级,意义不大啊,所以你的错误解题思想就开始蔓延了。
    开始看的这题后的我开始枚举第一个数,又根据比例找出了其他两个数,高高
    兴兴的提交了。

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<algorithm>
    using namespace std;
    bool ans;
    int a,b,c;
    int main()
    {
        cin>>a>>b>>c;
        for(a=123;a<=333;a++)
        {
            int x=a*b;
            int y=a*c;
            if((a/100)*(a/10%10)*(a%10)*(x/100)*(x/10%10)*(x%10)*(y/100)*(y/10%10)*(y%10)==1*2*3*4*5*6*7*8*9){
                printf("%d %d %d
    ",a,x,y);
                ans=true;
            }
        }
        if(!ans)printf("No!!!");
        return 0;
    }
    WA代码

    WOC?这是咋滴啦,为啥只有60分。
    (1)怕不是比例比较大?有超过一千的数?加个特判吧。---好了(依旧60分)。
    (2)嗯哼?不可能啊?哦!自己zz了,我枚举的是第一个数啊,而却用比例乘,那乘出来是个啥?再次提交(80分)
    (3)咦?这个“No”是咋回事?不成立的,我为啥有输出,一定是控制条件不太够吧,这还能往哪加呢?if咯。
      哦,对了,好像这几个数分别为1,2,3...9还要相加得45吧,加上试试。好吧(100分)。

    个人感觉这题很神奇。
    代码在此:
    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<algorithm>
    using namespace std;
    bool ans;
    int a,b,c;
    int main()
    {
        cin>>a>>b>>c;
        for(int i=1;i<=333;i++)
        {
            int x=i*b;
            int y=i*c;
            int z=a*i;
            if(z>=1000||y>=1000||x>=1000)break;
            if((z/100)*(z/10%10)*(z%10)*(x/100)*(x/10%10)*(x%10)*(y/100)*(y/10%10)*(y%10)==1*2*3*4*5*6*7*8*9
              &&(z/100)+(z/10%10)+(z%10)+(x/100)+(x/10%10)+(x%10)+(y/100)+(y/10%10)+(y%10)==45){
                printf("%d %d %d
    ",z,x,y);
                ans=true;
            }
        }
        if(ans==0)printf("No!!!");
        return 0;
    }
    
    
    
    
     
  • 相关阅读:
    ArduinoYun教程之ArduinoYun硬件介绍
    Nmap扫描教程之基础扫描详解
    Nmap扫描教程之Nmap基础知识
    Nmap扫描教程之DNS服务类
    Nmap扫描教程之网络基础服务DHCP服务类
    Xamarin iOS教程之自定义视图
    Xamarin iOS教程之警告视图
    Xamarin iOS教程之页面控件
    使用光学鼠标传感器实现旋转(或线性)测量(转)
    基于STM32的uCOS-II移植详解
  • 原文地址:https://www.cnblogs.com/rmy020718/p/8845809.html
Copyright © 2020-2023  润新知