讨论 / 终于AC了,50分的看下
liulei626 2013-07-25 21:23:00
点我顶贴 收藏 删除
我原来50,然后发现数据是200000不是20000

改过来就好了

看是不是这里错了

#1 tchchao@2011-01-22 08:27:00
回复 删除
回复 楼主liulei626 的帖子

ai...

#2 847727884@2013-07-25 21:23:00
回复 删除
一般人都不会错的吧……
#3 g++@2016-03-19 05:26:45
回复 删除
pascal 90分 超时的自己改

测试点9超时

var

n,i,j,k,c:longint;

a:array[1..200000] of qword;

procedure sort(l,r: longint);

var

i,j,x,y: longint;

begin

i:=l;

j:=r;

x:=a[(l+r) div 2];

repeat

while a[i]<x do

inc(i);

while x<a[j] do

dec(j);

if not(i>j) then

begin

y:=a[i];

a[i]:=a[j];

a[j]:=y;

inc(i);

j:=j-1;

end;

until i>j;

if l<j then

sort(l,j);

if i<r then

sort(i,r);

end;

begin

assign(input,'t.in');reset(input);

assign(output,'t.out');rewrite(output);

readln(n);

k:= 1;

for i:=1 to n do

readln(a[i]);

sort(1,n);

write(a[1]);

for i:=2 to n do

begin

if a[i]=a[i-1] then begin

inc(k);

end else

begin

writeln(' ',k);write(a[i]);

k:= 1;

end;

end;

writeln(' ',k);

end.

#4 Alexxuhaoran@2018-05-03 05:49:35
回复 删除
回复楼主 我用C++50分是因为一开始用冒泡超时了五个,应该用快排!
查看更多回复
提交回复