zoukankan      html  css  js  c++  java
  • [洛谷1618]三连击(升级版)

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

    输入输出格式 Input/output】

    【输入格式】

    三个数,A B C。
    【输出格式】

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

    【输入输出样例 Sample input/output】

    样例测试点#1

    输入样例: 
    1 2 3

    输出样例:

    192 384 576
    219 438 657
    273 546 819
    327 654 981

    说明 description】
    保证A<B<C

    【思路】

      基本上和三连击一个思路,简单的爆搜,最差也是三重循环,时间复杂度(O(N^3))。

    var s,s1,s2,s3,s4:string;
        i,j,k,h,x,y,z,c:longint;  
        a:array[1..9]of longint;  
        b:boolean;
    begin  
      readln(x,y,z);c:=0;  
      for i:=123 to 987 do  
      begin  
        for h:=1 to 9 do a[h]:=0;
        b:=true;  
        j:=trunc(i/x*y);k:=trunc(i/x*z);  
        if(j<1000)and(k<1000)then  
        begin  
        str(i,s1);str(j,s2);str(k,s3);
        s:=concat(s1,s2,s3);  
        for h:=1 to 9 do   
        begin  
          str(h,s4);
          while pos(s4,s)<>0 do   
          begin  
            inc(a[h]);  
            delete(s,pos(s4,s),1);
          end;  
          if a[h]<>1 then  
          begin  
            b:=false;  
            break;
          end;  
        end;  
        if b=true then  
        begin
          writeln(i,' ',j,' ',k);
          inc(c);  
        end;
        end;  
      end;  
      if c=0 then writeln('No!!!');
    end.
  • 相关阅读:
    天心阁漫步
    大美湘江
    easyui tree基本操作
    盗墓笔记
    半年了
    文件上传控件值发生变化后自动提交表单
    宁静的夏夜
    今天您给别人让座,将来别人给您让座
    优先队列priority_queue 用法详解
    POJ2387
  • 原文地址:https://www.cnblogs.com/yangqingli/p/4710949.html
Copyright © 2011-2022 走看看