題解 洛谷P1445 Violet 櫻花

2022-07-02 11:12:12 字數 1127 閱讀 4150

題面

我們首先對題目中的式子進行化簡:

\[\begin

\frac + \frac & = \frac \\

y\times n! + x\times n! & = xy \\

(x - n!)\times y & = x\times n! \\

y & = \frac \\

& = \frac \\

& = \frac \\

& = \frac + \frac \\

& = n! + \frac

\end\]

因為 \(x\) 和 \(y\) 都是正整數,所以 \(\frac\) 也一定是正整數。

於是問題就轉化成了求 \(n!^2\) 的約數個數。

由唯一分解定理得:

\[\begin

n! & = p_1^ \times p_2^ \times \dots \times p_k^ \\

n!^2 & = p_1^ \times p_2^ \times \dots \times p_k^

\end\]

所以 \(n!^2\) 的約數個數就是 \((2c_1 + 1) \times (2c_2 + 1) \times \dots \times (2c_k+1)\)。

先考慮一下如何求出 \(n!\) 的約數個數。

我們考慮求出 \(1\sim n\) 中的每個質數 \(p\),\(n!\) 中質因子 \(p\) 的個數就等於 \(1\sim n\) 中每個數包含質因子 \(p\) 的個數之和。

最後在統一約數個數時轉換一下即可。

#include using namespace std;

typedef long long ll;

const int n = 1000003, mod = 1000000007;

int n, m;

int pri[n], tot;

bool st[n];

inline void pre(int n)

}}int main()

cout << ans % mod << endl; //注意取模

return 0;

}

洛谷P1445 Violet 櫻花

推式子 frac frac frac 先通分 frac frac 交叉相乘 xy n x y 移項 n x y xy 0 兩邊加上 n 2 n 2 n x y xy n 2 因為方便十字相乘法因式分解 n x n y n 2 令 a n x b n y 因為 n 2 已確定 那只要確定 a 就能確定...

洛谷P1445 Violet 櫻花 數學

我很憤怒 求方程 1 x 1 y 1 n 的正整數解的組數,其中n 10 6。解的組數,應模1e9 7。輸入格式 輸入乙個整數n 輸出格式 輸出答案 輸入樣例 1 輸出樣例 1 極其噁心的一道題.看到這種題肯定是需要化簡式子的,因為出題人不會好到給你乙個好做的式子 frac frac frac fr...

洛谷 P4167 Violet 櫻花

題面 又懶得弄題面,開個傳送門吧 分析人生第一次切數學題,我們先把方程寫出來 frac frac frac 現在我們知道的條件是x,y都是正整數 廢話 所以我們考慮單獨通過式子的變換將x,y表示出來,表示出來的式子算出來也一定是個整數 frac frac frac frac frac frac fr...