讨论 / 明明的随机数AC题解 绝对满分!!
大名鼎鼎的张嘉豪 2011-08-23 04:28:00
点我顶贴 收藏 删除
相信我吧!

程序:

var a,b:array[1..100] of longint;

n,i,j,t,x:longint;

begin

readln(n);

for i:=1 to n do read(a[i]);

for i:=1 to n do

for j:=1 to n-i do

if a[j]>a[j+1] then begin

t:=a[j];

a[j]:=a[j+1];

a[j+1]:=t;

end;

for i:=1 to n-1 do

if a[i]=a[i+1] then a[i]:=0;

for i:=1 to n do if a[i]<>0 then x:=x+1;

writeln(x);

j:=0;

for i:=1 to n do if a[i]<>0 then begin

inc(j);

b[j]:=a[i];

end;

for i:=1 to j-1 do write(b[i],' ');

writeln(b[j]);

end.

#1 a0180600@2011-08-23 01:37:00
回复 删除
var n,i,j,k:longint;

tong:array[1..1000] of boolean;

begin

readln(n); k:=0;

for i:=1 to n do

begin

read(j);

if tong[j] then continue

else

begin

tong[j]:=true;

inc(k);

end;

end;

writeln(k);

for i:=1 to 1000 do

if tong[i] then write(i,' ');

end.

看谁短。

#2 nie@2011-08-23 04:28:00
回复 删除
更短一点

var b:array[1..1000]of boolean;

n,i,j,k:integer;

begin

readln(n);

for i:=1 to n do

begin

read(j);

if not b[j] then inc(k);

b[j]:=true;

end;

writeln(k);

for i:=1 to 1000 do

if b[i] then write(i,' ');

end.

查看更多回复
提交回复