題目顯然讓求φ(∏i=lrai)
可以用線段樹維護一下乘積然後求逆元再求歐拉函數,用壓位的方法可以縮小60倍的常數。考慮一下樹狀數組的做法,因為只有
60個質因子,所以可以開
60個樹狀數組維護每一個質因子,最初維護了前綴的乘積然後T飛了。因為乘法比起加法還是比較慢的所以可以維護一個前綴的指數和,這樣就可以在BZOJ成功卡進最後一頁QAQ,然而UOJ的Extra Test還是過不了
(應該是我寫的代碼太丑的原因吧。。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include