社区讨论
求助QAQ
P1628合并序列参与者 2已保存回复 1
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 1 条
- 当前快照
- 1 份
- 快照标识符
- @mi6h5s9k
- 此快照首次捕获于
- 2025/11/20 04:48 4 个月前
- 此快照最后确认于
- 2025/11/20 04:48 4 个月前
CPP
var
i,j,m,n,k,p:longint;
s,t:string;
a,b:array[0..1000000]of string;
check:array[0..1000000]of longint;
procedure qs(l,r:longint);
var
i,j,x:longint;
a1:string;
begin
i:=l; j:=r;
x:=(l+r) div 2;
repeat
while b[i]<b[x] do inc(i);
while b[j]>b[x] do dec(j);
if not(i>j) then
begin
a1:=b[i]; b[i]:=b[j]; b[j]:=a1;
inc(i); dec(j);
end;
until i>j;
if i<r then qs(i,r);
if l<j then qs(l,j);
end;
begin
readln(n);
for i:=1 to n do
readln(a[i]);
readln(s);
for i:=1 to n do
begin
t:='';
for j:=1 to length(a[i]) do
begin
t:=t+a[i][j];
if t=s then
begin
check[i]:=1;
break;
end;
end;
end;
for i:=1 to n do
if check[i]=1 then
begin
inc(m); b[m]:=a[i];
end;
qs(1,m);
for i:=1 to m do
writeln(b[i]);
end.
//样例过了但是全WA,求大牛教我。
回复
共 1 条回复,欢迎继续交流。
正在加载回复...