求题解

P1808 单词分类

```cpp var n,i,j,k,s:integer; a:string; b:boolean; f:array[1..10000,'A'..'z']of integer; function bj(i,j:integer):Boolean; var l:char; begin for l:='A' to 'Z' do begin if f[i,l]<>f[j,l] then exit(false); end; exit(true); end; begin readln(n); for i:=1 to n do begin readln(a); for j:=1 to length(a) do f[i,a[j]]:=f[i,a[j]]+1; b:=false; for k:=1 to i-1 do if bj(k,i) then begin b:=true; break; end; if b=false then s:=s+1; end; writeln(s); end. ```
by nUMA @ 2015-11-08 17:56:57


用计数方法就行了。不贴代码了,因为和楼上的差不多。
by xiaofan @ 2015-11-08 18:06:36


|