CF1641B Repetitions Decoding
I_am_Accepted · · 题解
Preface
骄傲地使用多年没写的链表过了此题。
Analysis
首先,如果原序列中某一种值出现了奇数次肯定不行。我们下面构造偶数必然可行。
我们先观察一个样例:
look :1 2 3 1 3 4 2 4
step1:1 2 3 1(2 2)3 4 2 4
step2:1 2 3 1 2(3 3)2 3 4 2 4
look :1 2 3 1 2 3|3 2 3 4 2 4
step3:1 2 3 1 2 3|3 2 3(2 2)4 2 4
end :1 2 3 1 2 3|3 2 3 2|2 4 2 4
也就是说,我们找到
由于每种值均出现偶数次,此方法必然可行。并且设
易知
我们用链表也能够轻松让时间复杂度同阶于操作数。
Code
Link