社区讨论
求找错!2MLE 4WA 4AC!
P1808单词分类参与者 3已保存回复 3
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 3 条
- 当前快照
- 1 份
- 快照标识符
- @mi5hpa9c
- 此快照首次捕获于
- 2025/11/19 12:15 4 个月前
- 此快照最后确认于
- 2025/11/19 12:15 4 个月前
我的内心是崩溃的……%>_<%
…………
…………
也是懵逼的…………



为什么!
贴程序了
PASCALvar i,j,n,ans:longint;
word:string;
get:array[1..100000] of string;
procedure swapstr(var x,y:string);
var bo:string;
begin
bo:=x;
x:=y;
y:=bo;
end;
procedure swapchr(var x,y:char);
var bo:char;
begin
bo:=x;
x:=y;
y:=bo;
end;
procedure qsortstr(l,r:longint);
var i,j:longint;
mid:char;
begin
i:=l;j:=r;mid:=word[(l+r) div 2];
repeat
while word[i]<mid do inc(i);
while word[j]>mid do dec(j);
if i<=j then
begin
swapchr(word[i],word[j]);
inc(i);
dec(j);
end;
until i>j;
if i<r then qsortstr(i,r);
if l<j then qsortstr(l,j);
end;
procedure qsortarr(l,r:longint);
var i,j:longint;
mid:string;
begin
i:=l;j:=r;mid:=get[(l+r) div 2];
repeat
while get[i]<mid do inc(i);
while get[j]>mid do dec(j);
if i<=j then
begin
swapstr(get[i],get[j]);
inc(i);
dec(j);
end;
until i>j;
if i<r then qsortarr(i,r);
if j<l then qsortarr(l,j);
end;
begin
//assign(input,'word.in');
//assign(output,'word.out');
//reset(input);
//rewrite(output);
readln(n);
ans:=1;
for i:=1 to n do
begin
readln(word);
qsortstr(1,length(word));
get[i]:=word;
end;
qsortarr(1,n);
//*
for i:=2 to n do
if get[i]<>get[i-1] then inc(ans);
//*
writeln(ans);
//close(input);
//close(output);
end.
求助!
回复
共 3 条回复,欢迎继续交流。
正在加载回复...