На днях столкнулся с задачей, где при обработке строки мне приходится вычислять минимальный период (длина периода делит длину строки) для каждой ее подстроки. Возможно ли это как-то делать за O(N^2) или хотя бы просто быстрее, чем за O(N^3)?
# | User | Rating |
---|---|---|
1 | tourist | 3803 |
2 | jiangly | 3707 |
3 | Benq | 3627 |
4 | ecnerwala | 3584 |
5 | orzdevinwang | 3573 |
6 | Geothermal | 3569 |
6 | cnnfls_csy | 3569 |
8 | Radewoosh | 3542 |
9 | jqdai0815 | 3532 |
10 | gyh20 | 3447 |
# | User | Contrib. |
---|---|---|
1 | awoo | 162 |
2 | maomao90 | 160 |
3 | adamant | 157 |
4 | maroonrk | 154 |
5 | -is-this-fft- | 149 |
6 | Petr | 148 |
6 | SecondThread | 148 |
8 | atcoder_official | 147 |
9 | TheScrasse | 145 |
9 | nor | 145 |
Найти период каждой подстроки за O(N^2)
На днях столкнулся с задачей, где при обработке строки мне приходится вычислять минимальный период (длина периода делит длину строки) для каждой ее подстроки. Возможно ли это как-то делать за O(N^2) или хотя бы просто быстрее, чем за O(N^3)?
Rev. | Lang. | By | When | Δ | Comment | |
---|---|---|---|---|---|---|
ru3 |
![]() |
EzikBro | 2021-03-07 09:35:35 | 179 | Мелкая правка: ' - p) + 1 или dp[j ' -> ' - p) + 1 \n # или dp[j ' | |
ru2 |
![]() |
EzikBro | 2021-03-07 09:22:46 | 1133 | Мелкая правка: 'n\n~~~~~\n\n~~~~~\n\' -> 'n\n~~~~~\nint main()\n{\n}\n~~~~~\n\' | |
ru1 |
![]() |
EzikBro | 2021-03-06 23:30:37 | 280 | Первая редакция (опубликовано) |
Name |
---|