Mathematics Asked on January 3, 2022
LCM can be upto or greater than $10^{50}$.
$k$ and $m$ are upto $10^9$.
My current approach is
This is working but takes a long time in finding LCM using GCD.
Is there any other way?
Hint: there is no need to actually calculate $LCM(a_1,ldots,a_n)$. We only have to find $LCM bmod m$. Instead calculate $d=GCD(a_1,ldots,a_n,m)$.
Let $x = LCM(a_1,ldots,a_n) bmod m$. This means that $x = LCM - ell m$ for some integer $ell$.
The right hand side is divisible by $d$, therefore $x$ is divisible by $d$ as well.
So we have $x = dcdot(frac{LCM}d - ell frac md)$ and we can write: $$x=dcdotleft(frac{LCM}{d} bmod frac mdright) = dcdotleft(LCM(frac{a_1}d,ldots,frac{a_n}d)bmod frac mdright).$$
Answered by Klaas van Aarsen on January 3, 2022
Get help from others!
Recent Questions
Recent Answers
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP