Can anyone help me with how to approach this problem?
I am completely blank on how to proceed.
I tried reading the editorial but couldn't understand it.
# | 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 |
Can anyone help me with how to approach this problem?
I am completely blank on how to proceed.
I tried reading the editorial but couldn't understand it.
Name |
---|
The key idea is that if the adjacent characters are equal, then we can untangle them. So if a sequence of length n exists, we can change it to a sequence of length n-2 by deleting the adjacent ones.
For example, (-++-) -> (--) -> ()
I used a stack to do this.
If the stack is empty, push the current character onto the stack.
Else if the top symbol is same as the current one, pop it off the stack.
Else push it onto the stack.
Finally check if the stack is empty or not.
code
Thanks for this, the official editorial is very confusing.