Problem link: [Here](https://www.spoj.com/problems/COPSEQ/) ↵
↵
Harder version of problem: [Here](https://www.spoj.com/problems/COPSEQH/)↵
↵
Abridged problem statement (for non-hard version): ↵
Given **n <= 10^5** and **m <= 10^18**, how many sequence of length **n** satisfies the following conditions: ↵
1. Every number in the sequence is positive divisor of **m** ↵
2. Two adjacent element is not coprime. ↵
Numbers can be repeated, different ordering counts as different sequence.↵
↵
The best way I could think of right now is factorizing using pollard rho and then do O(N*D*D) naive dp where D is number of divisors. Problem is D can be up to almost 10^5 for some highly composite numbers.↵
↵
Another idea that comes to mind is to treat divisors as vertex, connect them if they can be adjacent in the resulting sequence, and find total number of walks with length (n-1) which can be done using matrix power. But this seems even slower because matrix can be large.↵
↵
Any help is appreciated, thanks!
↵
Harder version of problem: [Here](https://www.spoj.com/problems/COPSEQH/)↵
↵
Abridged problem statement (for non-hard version): ↵
Given **n <= 10^5** and **m <= 10^18**, how many sequence of length **n** satisfies the following conditions: ↵
1. Every number in the sequence is positive divisor of **m** ↵
2. Two adjacent element is not coprime. ↵
Numbers can be repeated, different ordering counts as different sequence.↵
↵
The best way I could think of right now is factorizing using pollard rho and then do O(N*D*D) naive dp where D is number of divisors. Problem is D can be up to almost 10^5 for some highly composite numbers.↵
↵
Another idea that comes to mind is to treat divisors as vertex, connect them if they can be adjacent in the resulting sequence, and find total number of walks with length (n-1) which can be done using matrix power. But this seems even slower because matrix can be large.↵
↵
Any help is appreciated, thanks!