【神犇】 @ 2015-10-05 10:36:49
什么问题?
program P1618;
var
ch:char;
i,a,b,c,t:longint;
s,st:string;
bo:boolean;
begin
readln(a,b,c);
t:=0;
for i:=123 to 329 do
begin
str(i*a,s);
str(i*b,st);
s:=s+st;
str(i*c,st);
s:=s+st;
bo:=true;
for ch:='1' to '9' do if pos(ch,s)=0 then bo:=false;
if bo then begin
writeln(i*a,' ',i*b,' ',i*c);
inc(t);
end;
if not bo and (i=329) and (t=0) then writeln('No!!!');
end;
end.
测试点 #1:通过该测试点。 得分20,耗时15ms,内存3121kB。 测试点 #2:通过该测试点。 得分20,耗时0ms,内存3133kB。
测试点 #3:错误的答案。 得分0,耗时0ms,内存3137kB。
该行正确答案长度:5 你的答案长度:13
你是在整个测试点输出的 0% 地方开始出错的。
这一行你是在第 1 个字符开始与标准输出不同的。
测试点 #4:错误的答案。 得分0,耗时0ms,内存3137kB。
该行正确答案长度:0 你的答案长度:12
你是在整个测试点输出的 100% 地方开始出错的。
这一行你是在第 1 个字符开始与标准输出不同的。
测试点 #5:错误的答案。 得分0,耗时15ms,内存3137kB。
该行正确答案长度:11 你的答案长度:17
你是在整个测试点输出的 0% 地方开始出错的。
这一行你是在第 2 个字符开始与标准输出不同的。
by fl_334 @ 2015-10-05 14:41:40
var
s,ss:string;
c:char;
i,a,b,d,k:longint;
no_answer:boolean;
procedure yx(var a,b,d:longint);
var
x:longint;
begin
x:=a;
for i:=x downto 1 do
if (a mod i=0) and (b mod i=0) and (d mod i=0) then begin
a:=a div i;
b:=b div i;
d:=d div i;
break;
end;
end;
begin
k:=0;
read(a,b,d);
yx(a,b,d);
for i:=100 to 999 do
begin
no_answer:=false;
if (i*b mod a<>0) or (i*d mod a<>0) then continue;
str(i,ss);
str(i*b div a,s);
ss:=ss+s;
str(i*d div a,s);
ss:=ss+s;
if length(ss)>=10 then continue;
for c:='1' to '9' do
if pos(c,ss)=0 then begin no_answer:=true;break;end;
if not no_answer then
begin
writeln(i,' ',i*b div a,' ',i*d div a);
k:=1;
end;
end;
if (k=0) then write('No!!!');
end.
by fl_334 @ 2015-10-12 21:16:50