[BZOJ3994][SDOI2015]約數個數和

3994: [SDOI2015]約數個數和

Time Limit: 20 Sec??Memory Limit: 128 MB Submit: 1104??Solved: 762 [Submit][Status][Discuss]

Description

設d(x)為x的約數個數,給定N、M,求 ?

?

Input

輸入文件包含多組測試數據。

第一行,一個整數T,表示測試數據的組數。
接下來的T行,每行兩個整數N、M。

Output

?T行,每行一個整數,表示你所求的答案。

Sample Input

2
7 4
5 6

Sample Output

110
121

HINT

?1<=N, M<=50000

1<=T<=50000
圖片好像掛了。。。那張圖是$\sum_{i=1}^n\sum_{j=1}^m d\left(ij\right)$
如果沒掛請忽視上面那排話
由對稱性,不妨設$n\le m$
有一個結論$d\left(xy\right)=\sum_{i\mid x}\sum_{j\mid y}\left[gcd\left(i,j\right)=1\right]$
這個證明的話可以考慮每個質因數的貢獻。。。意會一下
那么可以得到
$ans=\sum_{x=1}^n\sum_{y=1}^m\sum_{i\mid x}\sum_{j\mid y}\left[gcd\left(i,j\right)=1\right]$
$=\sum_{i=1}^n\sum_{j=1}^m\lfloor\frac{n}{i}\rfloor\lfloor\frac{m}{j}\rfloor\left[gcd\left(i,j\right)=1\right]$
$=\sum_{i=1}^n\sum_{j=1}^m\lfloor\frac{n}{i}\rfloor\lfloor\frac{m}{j}\rfloor\sum_{d\mid i,d\mid j}\mu\left(d\right)$
$=\sum_{d=1}^n\mu\left(d\right)\sum_{i=1}^{\lfloor\frac{n}{d}\rfloor}\sum_{j=1}^{\lfloor\frac{m}{d}\rfloor}\lfloor\frac{n}{id}\rfloor\lfloor\frac{m}{id}\rfloor$
$=\sum_{d=1}^n\mu\left(d\right)\sum_{i=1}^{\lfloor\frac{n}{d}\rfloor}\sum_{j=1}^{\lfloor\frac{m}{d}\rfloor}\lfloor\frac{\lfloor\frac{n}{d}\rfloor}{i}\rfloor\lfloor\frac{\lfloor\frac{m}{d}\rfloor}{i}\rfloor$
$=\sum_{d=1}^n\mu\left(d\right)\left(\sum_{i=1}^{\lfloor\frac{n}{d}\rfloor}\lfloor\frac{\lfloor\frac{n}{d}\rfloor}{i}\rfloor\right)\left(\sum_{j=1}^{\lfloor\frac{m}{d}\rfloor}\lfloor\frac{\lfloor\frac{m}{d}\rfloor}{i}\rfloor\right)$
令$g\left(n\right)=\sum_{i=1}^n\lfloor\frac{n}{i}\rfloor$
那么$ans=\sum_{d=1}^n\mu\left(d\right)g\left(\lfloor\frac{n}{d}\rfloor\right)g\left(\lfloor\frac{m}{d}\rfloor\right)$
而$g$可以通過枚舉每個分子然后不停的往倍數上加$1$,然后掃一遍前綴和求出,我為了用Latex碼數學公式現在已經頭昏眼花神志不清,如果你覺得我已經開始胡言亂語了導致你沒看懂那就看看代碼吧
預處理時間復雜度為$O\left(nlnn\right)$
似乎神犇們都是$O\left(n\right)$預處理???我還是太菜了哎
每次詢問的話分塊求,總時間復雜度$O\left(T\sqrt{n}\right)$
#include <cstdio>
#include <algorithm>
using namespace std;
typedef long long ll;
const int maxn = 50000 + 10;
bool mark[maxn] = {false};
int mu[maxn], g[maxn] = {0}, sum[maxn];
int pri[maxn], prn = 0;
void shai(){mu[1] = 1;for(int i = 2; i < maxn; i++){if(!mark[i]){mu[i] = -1;pri[++prn] = i;}for(int j = 1; j <= prn && pri[j] * i < maxn; j++){mark[i * pri[j]] = true;if(i % pri[j] == 0){mu[i * pri[j]] = 0;break;}else mu[i * pri[j]] = -mu[i];}}for(int i = 1; i < maxn; i++)for(int j = i; j < maxn; j += i)g[j]++;sum[0] = g[0] = 0;for(int i = 1; i < maxn; i++){sum[i] = mu[i] + sum[i - 1];g[i] += g[i - 1];}
}
int main(){shai();int T, n, m;ll ans;scanf("%d", &T);while(T--){scanf("%d %d", &n, &m);if(n > m) swap(n, m);ans = 0;for(int p, i = 1; i <= n; i = p + 1){p = min(n / (n / i), m / (m / i));ans += (ll) (sum[p] - sum[i - 1]) * g[n / p] * g[m / p];}printf("%lld\n", ans);}return 0;
}

?

轉載于:https://www.cnblogs.com/ruoruoruo/p/7678841.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/253131.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/253131.shtml
英文地址,請注明出處:http://en.pswp.cn/news/253131.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

月蝕動漫獲快看漫畫600萬元A輪戰略投資,走國漫精品化路線

11月5日消息&#xff0c;月蝕動漫宣布獲得快看漫畫600萬元A輪戰略投資。 據了解&#xff0c;月蝕動漫曾于2017年1月獲得原力創投的百萬級種子輪投資&#xff0c;2018年1月獲得英諾天使基金的百萬級天使輪投資。 據月蝕動漫創始人賀小桐透露&#xff0c;團隊能在行業寒冬期獲得…

大力智能臺燈T6 結構拆解

近幾年教育硬件產品層出不窮&#xff0c;教育硬件賽道布局時間較長的有網易、訊飛、步步高系等公司&#xff0c;2020年10月&#xff0c;字節跳動旗下大力教育經過兩年多的調研和研發&#xff0c;高調推出首款智能硬件產品“大力智能作業臺燈” T5。 上市一年取得不錯的銷售成績…

C++靜態庫與動態庫

http://www.cnblogs.com/skynet/p/3372855.html

第5章 IDA Pro

5.1 加載一個可執行文件 默認情況下IDA Pro的反匯編代碼中不包含PE頭或資源節&#xff0c;可以手動指定加載。 5.2 IDA Pro接口 5.2.1 反匯編窗口模式 二進制模式/圖形模式&#xff1a; 圖形模式&#xff1a;紅色表示一個條件跳轉沒有被采用&#xff0c;綠色表示這個條件跳轉被…

樹鏈剖分(模板)

luogu題庫 題目描述 如題&#xff0c;已知一棵包含N個結點的樹&#xff08;連通且無環&#xff09;&#xff0c;每個節點上包含一個數值&#xff0c;需要支持以下操作&#xff1a; 操作1&#xff1a; 格式&#xff1a; 1 x y z 表示將樹從x到y結點最短路徑上所有節點的值都加上…

定制或外購適配器規格需求列表

輸入特性例如輸入電壓180~264VAC 200~264VAC輸入頻率47~63Hz輸入電流0.7A Max功率因素&#xff1e;0.47 10W220VAC浪涌電流&#xff1c;60A電源效率&#xff1e;81.26%空載功耗0.2W 輸出特性例如輸出電壓11.4~12.6V DC輸出電流1.75A紋波要求&#xff1c;120mV 負載調整率5%線性…

使用 typescript ,提升 vue 項目的開發體驗(1)

此文已由作者張漢銳授權網易云社區發布。歡迎訪問網易云社區&#xff0c;了解更多網易技術產品運營經驗。前言&#xff1a;對于我們而言&#xff0c;typescript 更像一個工具官方指南從 vue2.5 之后&#xff0c;vue 對 ts 有更好的支持。根據官方文檔&#xff0c;vue 結合 type…

Linux進程間通信——使用共享內存

//本文轉載http://blog.csdn.net/ljianhui/article/details/10253345下面將講解進程間通信的另一種方式&#xff0c;使用共享內存。一、什么是共享內存顧名思義&#xff0c;共享內存就是允許兩個不相關的進程訪問同一個邏輯內存。共享內存是在兩個正在運行的進程之間共享和傳遞…

laravel擴展包開發步驟總結

1. 創建包1php artisan workbench vendor/package --resources注: vendor:開發商名 package:包名2.修改下包里composer.json中的authors123456"authors": [{"name": "cicl","email": "test126.com"}]3. 為創建的包注冊Se…

洛谷 P1340 獸徑管理

題目描述 約翰農場的牛群希望能夠在 N 個(1<N<200) 草地之間任意移動。草地的編號由 1到 N。草地之間有樹林隔開。牛群希望能夠選擇草地間的路徑&#xff0c;使牛群能夠從任一 片草地移動到任一片其它草地。 牛群可在路徑上雙向通行。 牛群并不能創造路徑&#xff0c;但是…

功放關鍵規格參數檢查

編號規格備注1功放類型(開環/閉環)影響電性能指標2工作電壓(V)影響IC的穩定性3最大耐壓(V)影響IC的穩定性4最小負載(ohm)穩定性&#xff0c;過流&#xff0c;輸出功率&#xff0c;散熱5輸出功率過流&#xff0c;輸出功率&#xff0c;散熱6輸出方式(SE/BTL/PBTL)輸出功率&#x…

不踩雷不將就 京東智能產品30天無憂退

剁手節已經來臨&#xff0c;鋪天蓋地的促銷信息讓人應接不暇&#xff0c;恰好又是換季&#xff0c;確實需要買買買一波了。各種滿減活動讓人眼花繚亂&#xff0c;這波堪稱全年最大力度的促銷活動&#xff0c;令人是又喜又怕。倘若之前踩過雷的朋友&#xff0c;必然現在會謹慎許…

Linux進程間通信——使用信號量

//轉自http://blog.csdn.net/ljianhui/article/details/10243617 這篇文章將講述別一種進程間通信的機制——信號量。注意請不要把它與之前所說的信號混淆起來&#xff0c;信號與信號量是不同的兩種事物。有關信號的更多內容&#xff0c;可以閱讀我的另一篇文章&#xff1a;L…

麥克風陣列音頻檢查方法和標準

為確保產品能夠符合算法要求&#xff0c;務必提前做好相關設計&#xff0c;盡量確保各項指標滿足如下標準。 音頻評測工作&#xff0c;主要集中在研發設計階段&#xff1b;針對產品形態的不同&#xff0c;測試可分為裸板測試和整機測 試&#xff0c;下表為不同階段需要測試的…

Linux下git的使用——將已有項目放到github上

本地已經有一個項目了&#xff0c;需要將該項目放到github上&#xff0c;怎么操作&#xff1f; 步驟&#xff1a; 本地安裝git&#xff0c;有github賬號是前提。 &#xff08;1&#xff09;先在github創建一個空的倉庫&#xff0c;并復制鏈接地址。使用https&#xff0c;以.git…

SVG格式圖片轉成HTML中SVG的Path路徑

AI圖標制作完成之后&#xff0c;保存的svg文件包含許多AI的信息&#xff0c;如果要在HTML中使用&#xff0c;我們需要在svg文件中提取/修改信息&#xff0c;重新保存。 1、在AI中已經完成圖標&#xff0c;要保存SVG文件&#xff0c;點擊“文件(File)”-“另存為(Save As)”&…

11-5 筆記

函數&#xff1a; 函數在調用的時候&#xff0c;會形成一個私有作用域&#xff0c;內部的變量不會被外面訪問&#xff0c;這種保護機制叫閉包。這就意味著函數調用完畢&#xff0c;這個函數形成的棧內存會被銷毀。 函數歸屬誰跟它在哪調用沒有關系&#xff0c;跟在哪定義有關。…

linux下socket連接下的心跳機制

1&#xff0c;在長連接下&#xff0c;有可能很長一段時間都沒有數據往來。 理論上說&#xff0c;這個連接是一直保持連接的&#xff0c;但是實際情況中&#xff0c;如果中間節點出現什么故障是難以知道的。 有的節點&#xff08;防火墻&#xff09;會自動把一定時間之內沒有數…

大力智能臺燈與飛利浦臺燈 智能調光功能體驗

目前市面上絕大部分智能臺燈幾乎都宣稱有自動調光功能&#xff0c;即臺燈隨環境光變化自動調節LED光的亮度&#xff0c;或者臺燈在固定環境光下&#xff0c;一旦開啟了自動調光模式LED燈將自動調光至一個最適合讀寫作業的亮度&#xff1b; 下面對比體驗了大力臺燈T6 和 飛利浦…

php-驗證碼

<html><body> <h2>用戶注冊&#xff1a;</h2> <br> <form action"a.php" method"post"> 賬 號&#xff1a;<input type"text" name"zh" id""> <br> 密 碼&#xff1a;&l…