1. 程式人生 > >【HDU 5908 || #bestcoder88 1002】【map的應用 暴力】Abelian Period

【HDU 5908 || #bestcoder88 1002】【map的應用 暴力】Abelian Period

Let S be a number string, and occ(S,x) means the times that number x occurs in S.

i.e. S=(1,2,2,1,3),occ(S,1)=2,occ(S,2)=2,occ(S,3)=1.

String u,w are matched if for each number iocc(u,i)=occ(w,i) always holds.

i.e. (1,2,2,1,3)(1,3,2,1,2).

Let S be a string. An integer k is a full Abelian period of S
 if S can be partitioned into several continous substrings of length k, and all of these substrings are matched with each other.

Now given a string S, please find all of the numbers k that k is a full Abelian period of S.