Information and Computation ( IF 1 ) Pub Date : 2021-06-25 , DOI: 10.1016/j.ic.2021.104779 Tomasz Kociumaka , Jakub Radoszewski , Wojciech Rytter , Juliusz Straszyński , Tomasz Waleń , Wiktor Zuba
A k-antipower (for ) is a concatenation of k pairwise distinct words of the same length. The study of fragments of a word being antipowers was initiated by Fici et al. (ICALP 2016) and first algorithms for computing such fragments were presented by Badkobeh et al. (Inf. Process. Lett., 2018). We address two open problems posed by Badkobeh et al. We propose efficient algorithms for counting and reporting fragments of a word which are k-antipowers. They work in time and time, respectively, where C is the number of reported fragments. For , this improves upon the time complexity of the solution by Badkobeh et al. We also show that the number of different k-antipower factors of a word of length n can be computed in time. Our main algorithmic tools are runs and gapped repeats. Finally, we present an improved data structure that checks, for a given fragment of a word and an integer k, if the fragment is a k-antipower.
This is a full and extended version of a paper presented at LATA 2019. In particular, no algorithm counting different antipower factors has been announced in the conference proceedings.
中文翻译:
有效的表示与文字Antipower因素的计数
甲ķ -antipower(为)是的串联ķ成对相同的长度的不同的话。Fici 等人发起了对反权力词片段的研究。(ICALP 2016)和第一算法,用于计算这样的片段通过Badkobeh等人提出。(INF组成。过程快报。,2018)。我们应对Badkobeh等人提出了两个开放的问题。我们提出了统计和报告这是一个词的片段高效的算法ķ -antipowers。他们在 时间和 时间,分别,其中Ç是报道片段的数目。为了这改善了时间复杂度 由Badkobeh等人的解决方案。我们还表明,不同的数目ķ长度的字的-antipower因素Ñ可以被计算时间。我们的主要算法工具是运行和跳空重复。最后,我们提出一种改进的数据结构,其检查,一个字的给定片段和整数ķ,如果片段是ķ -antipower。
这是在2019年LATA特别提交了一份文件的完整和扩展版本,没有算法计算不同antipower因素已在会议记录公布。