給定\(n,m,k\),計算
\[\sum_^n \sum_^m \mathrm(i,j)^k
\]對\(1000000007\)取模的結果
\(t\le 2000,1\le n,m,k\le 5000000\)
注意\(k\)不是每次都給的...
可以推出式子
\[\sum_^\lfloor\frac\rfloor\lfloor\frac\rfloor\sum_a^k\mu(b)
\]然後預處理一下右邊,發現右邊是\(f=id^k*\mu\),所以是積性的
因為\(id^k\)是完全積性函式,所以可以\(o(n)\)預處理
然後又有\(f(p^c)=(p^c)^k-(p^)^k\),\(p\)是質數,就可以篩了
code:
#include #include using std::min;
const int n=5e6+1;
const int mod=1000000007;
inline int add(int a,int b)
#define mul(a,b) (1ll*(a)*(b)%mod)
int qp(int d,int k)return f;}
int id[n],b[n],f[n],pri[n],ispri[n],k,cnt;
void init()
printf("%d\n",ans);
} return 0;
}
2019.3.17 bzoj 4407 於神之怒加強版
time limit 80 sec memory limit 512 mb submit 624 solved 297 submit status discuss 給下n,m,k.求 輸入有多組資料,輸入資料的第一行兩個正整數t,k,代表有t組資料,k的意義如上所示,下面第二行到第t 1行,每行為兩...
bzoj 4407 於神之怒加強版
給下n,m,k.求 輸入有多組資料,輸入資料的第一行兩個正整數t,k,代表有t組資料,k的意義如上所示,下面第二行到第t 1行,每行為兩個正整數n,m,其意義如上式所示。如題1 2 3 3 20感覺是道比較水的數論題?提個d k隨手莫比烏斯反演一下,再把 跟d k放在一起,預處理出來就好了。瑪雅,1...
bzoj4407 於神之怒加強版
傳送門 題解 推一波公式 你還是需要前置技能 那麼好像可以o tnlogn 直接暴力啊!當然是兩遍根號分塊變成o tn 啊 好訊息過不去。當你莫比烏斯反演發現複雜度不對的話怎麼辦?繼續瞎 化簡!令x pd,那麼有 哎這個式子看起來很和善 後面那個好像是積性函式 逃 那麼線性篩就行啦!問題是怎麼篩呢。...