洛谷P1445 [Violet]櫻花
題意
給定一個整數,求方程 的正整數解的組數。
其中。
思路
原方程左邊通分得
交叉相乘,得
即
等式兩邊同時加上,得
因式分解得
令,,則
由唯一分解定理知
則
即
確定了,就能確定。
而且只要確定了,就能確定。
是的因式
有種取值
那麼答案就是
(以上推導過程轉載自大佬M_sea的題解,如果M_sea大佬不同意我的行為,請告訴我,我將很快刪除這一段)
程式碼
const
nn=1000000;
mo=1000000007;
var
a,s,v:array[0..nn+10] of longint;
i,j,cnt,n,t:longint;
ans:int64; //安全起見,防止爆炸
begin
read(n);
fillchar(s,sizeof(s),0);
cnt:=0;
fillchar(v,sizeof(v),0);
for i:=2 to n do
begin
if v[i]=0 then
begin
inc(cnt);
a[cnt]:=i;
v[i]:=i;
end;
for j:=1 to cnt do
begin
t:=a[j];
if (t>v[i]) or (t*i>n) then break;
v[t*i]:=a[j];
end;
end; //線性篩法求素數
for i:=2 to n do 對n!進行質因數分解
begin
t:=i;
while t<>1 do
begin
inc(s[v[t]]);
t:=t div v[t]; //因為v[t]必然是t的因子
end;
end;
ans:=1;
for i:=1 to cnt do
ans:=ans*(s[a[i]] shl 1+1) mod mo; //計算答案
writeln(ans);
end.
時間複雜度為
相關文章
- bzoj 2721: [Violet 5]櫻花
- 洛谷P4113 [HEOI2012]採花
- 洛谷
- Python——畫一棵漂亮的櫻花樹(不同種櫻花+玫瑰+聖誕樹喔)Python
- 洛谷團隊
- 一場櫻花雨(Python實現)Python
- 【python】待君有餘暇,看春賞櫻花,這不得來一場浪漫的櫻花旅~Python
- 洛谷死亡時間
- 洛谷P1786
- 洛谷 - P5369
- 洛谷P6786
- 洛谷P10725
- 洛谷P10693
- 洛谷 - P6190
- 洛谷——玩具謎題
- 英雄聯盟(洛谷)
- 櫻花熱水器全國各市售後服務電話官方24小時櫻花維修中心
- 洛谷網校學習
- 昨天放洛谷的圖
- 將洛谷私信接入WindowsWindows
- 洛谷 P10254 口吃
- 洛谷傻逼之處
- 洛谷八皇后問題
- 洛谷 P3958乳酪
- 【洛谷】【分支】月份天數
- [HEOI 2015] 兔子與櫻花(貪心) | 錯題本
- 洛谷 P11323 Happy CardAPP
- 洛谷P1784.數獨
- 洛谷題單指南-字串-Test字串
- 洛谷P3853總結
- 洛谷-P9574 題解
- 洛谷-P9830 題解
- 洛谷p1048 採藥
- 洛谷-P1250 種樹
- 洛谷 P1161 開燈
- 洛谷 P1219 八皇后
- 洛谷P1087 FBI樹
- 洛谷題型摘選(三)