На днях столкнулся с задачей, где при обработке строки мне приходится вычислять минимальный период (длина периода делит длину строки) для каждой ее подстроки. Возможно ли это как-то делать за O(N^2) или хотя бы просто быстрее, чем за O(N^3)?
# | User | Rating |
---|---|---|
1 | tourist | 3947 |
2 | jiangly | 3734 |
3 | Radewoosh | 3646 |
4 | jqdai0815 | 3620 |
4 | Benq | 3620 |
6 | orzdevinwang | 3612 |
7 | ecnerwala | 3581 |
8 | Geothermal | 3569 |
8 | cnnfls_csy | 3569 |
10 | ksun48 | 3479 |
# | User | Contrib. |
---|---|---|
1 | awoo | 162 |
2 | maomao90 | 160 |
3 | nor | 156 |
4 | cry | 155 |
4 | adamant | 155 |
4 | atcoder_official | 155 |
4 | -is-this-fft- | 155 |
8 | maroonrk | 154 |
9 | Petr | 146 |
10 | djm03178 | 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 |
---|