Please anyone help me with this 98A - Help Victoria the Wise . I do not understand how the solution of editorial is approached.
# | User | Rating |
---|---|---|
1 | tourist | 3985 |
2 | jiangly | 3814 |
3 | jqdai0815 | 3682 |
4 | Benq | 3529 |
5 | orzdevinwang | 3526 |
6 | ksun48 | 3517 |
7 | Radewoosh | 3410 |
8 | hos.lyric | 3399 |
9 | ecnerwala | 3392 |
9 | Um_nik | 3392 |
# | User | Contrib. |
---|---|---|
1 | cry | 169 |
2 | maomao90 | 162 |
2 | Um_nik | 162 |
4 | atcoder_official | 161 |
5 | djm03178 | 158 |
6 | -is-this-fft- | 157 |
7 | adamant | 155 |
8 | awoo | 154 |
8 | Dominater069 | 154 |
10 | luogu_official | 151 |
Please anyone help me with this 98A - Help Victoria the Wise . I do not understand how the solution of editorial is approached.
Name |
---|
:(
Someone will come to help you, even if they don't, you know bro, LIFE_GOES_ON
Writing editorial is difficult for me too.
Link to AC submission
Take a cube and label it as follows.
Up, down : 0, 1
Front, Back : 2, 3
Left, Right : 4, 5
Now, we have 3 different kinds of rotations, each rotation has one of the above pairs fixed and the remaining ones complete some circles.
Say we have {1, 2, 3, 4} as an array. Then one rotation gives {2, 3, 4, 1}. Similarly, the positions for rotation as per the above notation are {0, 2, 1, 3}, {0, 4, 1, 5}, {2, 4, 3, 5}.
It is obvious that only 3 rotations are possible and 4th rotation gives us the original array.
So here's what I did :
Sort the initial string
Go through its permutations
Rotate each of its permutations along each of the 3 axes up to a maximum of 3 times(64 in total)
See if at least one of them already exists in the set
If it doesn't then increase the answer by 1
Push all the rotations of the current permutation into a set