Description
将1,2,…,9共9个数分成三组,分别组成三个三位数,且使这三个三位数构成
1:2:3的比例,试求出所有满足条件的三个三位数。
例如:三个三位数192,384,576满足以上条件。
Input
Output
Sample Input
Sample Output
192 384 576
... ... ...
... ... ...
... ... ...
解题思路:先从123到332循环,如果循环变量和其两倍和三倍的数字之和与数字之积都为123456789的和或积,则说明不重复,那就进行输出。
程序:
var
i:longint;
function check(t1,t2,t3:longint):boolean;
var
temp1,temp2,a1,a2,b1,b2,c1,c2:longint;
begin
temp1:=45;
temp2:=362880;
a1:=t1 mod 10+t1 div 10 mod 10+t1 div 100 mod 10;
b1:=t2 mod 10+t2 div 10 mod 10+t2 div 100 mod 10;
c1:=t3 mod 10+t3 div 10 mod 10+t3 div 100 mod 10;
a2:=(t1 mod 10)*(t1 div 10 mod 10)*(t1 div 100 mod 10);
b2:=(t2 mod 10)*(t2 div 10 mod 10)*(t2 div 100 mod 10);
c2:=(t3 mod 10)*(t3 div 10 mod 10)*(t3 div 100 mod 10);
if (a1+b1+c1=temp1) and (a2*b2*c2=temp2) then exit(true);
exit(false);
end;
begin
for i:=123 to 332 do
if check(i,2*i,3*i) then writeln(i,' ',2*i,' ',3*i);
end.