【bzoj2721】[Violet 5]樱花】的更多相关文章

http://www.cnblogs.com/rausen/p/4138233.html #include<cstdio> #include<iostream> using namespace std; #define MOD 1000000007 int n; bool Not[1000001]; int pr[1000001],e,ci[1000001]; void shai() { Not[1]=1; for(int i=2;i<=1000;++i) if(!Not[i…
先令n! = a: 1 / x + 1 / y = 1 / a  =>  x = y * a / (y - a) 再令 k = y - a: 于是x = a + a ^ 2 / k  =>  k | a ^ 2 故等价于求a ^2的约数个数 素数筛一下什么的就好了嘛 /************************************************************** Problem: 2721 User: rausen Language: C++ Result: Ac…
传送门 推一波式子: 1x+1y=1n!\frac 1 x+\frac 1 y=\frac 1 {n!}x1​+y1​=n!1​ =>xy−x∗n!−y∗n!xy-x*n!-y*n!xy−x∗n!−y∗n! = 000 =>(x−n!)(y−n!)=(n!)2(x-n!)(y-n!)=(n!)^2(x−n!)(y−n!)=(n!)2 于是把(n!)2(n!)^2(n!)2质因数分解就行了. 代码: #include<bits/stdc++.h> using namespace st…
[BZOJ2721][Violet 5]樱花 Description Input Output Sample Input 2 Sample Output 3 HINT 题解:,所以就是求(n!)2的约数个数 又有一个结论,若n=Πpi^ei,那么n的约数个数就是Π(ei+1),所以我们只需要筛出1-n 的所有素数,再分别计算每个素数的贡献就行了. #include <cstdio> #include <cstring> #include <iostream> #defi…
BZOJ_2721_[Violet 5]樱花_数学 Description Input Output $\frac{1}{x}+\frac{1}{y}=\frac{1}{m}$ $xm+ym=xy$ $(x-m)*(y-m)=m^{2}$ 于是转化为了求$n!$的约数个数 可以用每个质因子搞一下 代码: #include <stdio.h> #include <string.h> #include <algorithm> #include <stdlib.h>…
2721: [Violet 5]樱花 Time Limit: 5 Sec  Memory Limit: 128 MBSubmit: 599  Solved: 354 Description Input Output Sample Input Sample Output HINT Source interviewstreet--EQUATIONS [分析] 之前推出来然后几天直接打然后把$n!^2$的约数记成$n^2$的约数也是醉.. 先通分. 则$(x+y)*n!=x*y$ 设$g=gcd(x,…
2721: [Violet 5]樱花 Time Limit: 5 Sec  Memory Limit: 128 MBSubmit: 547  Solved: 322[Submit][Status][Discuss] Description Input Output Sample Input   Sample Output   HINT Source interviewstreet--EQUATIONS 分析: 考虑$y$大于$n!$,但是要求个数,所以不可能无限大,所以我们需要寻找的就是上界,考…
[Violet 5]樱花 Time Limit: 5 Sec  Memory Limit: 128 MBSubmit: 671  Solved: 395[Submit][Status][Discuss] Description Input Output Sample Input   Sample Output   HINT 题解: 上面废话许多. 设n!=z,y=z+d 1/x+1/y=1/z 1/x+1/(z+d)=1/z (x+z+d)/(x*z+dx)=1/z z(x+z+d)=x*z+d…
题目传送门:https://www.lydsy.com/JudgeOnline/problem.php?id=2721 好久没做数学题了,感觉有些思想僵化,走火入魔了. 这道题就是求方程$ \frac{1}{x}+\frac{1}{y}=\frac{1}{n!} $的正整数解个数. 首先我们可以把方程化为$ (x+y)n!=xy $...然后就发现搞不出什么了. 但是我们可以考虑换元,因为显然$ x,y>n $,所以我们设$ y=n!+k $,然后我们就可以把方程化为$ (x+n!+k)n!=x…
题面 题解 首先化一下式子 $$ \frac 1x+\frac 1y=\frac 1{n!} \Rightarrow \frac {x+y}{xy}=\frac 1{n!} \Rightarrow (x+y)n!=xy \\ \Rightarrow(n!-x)+(n!-y)=(n!)^2 $$ 看到最后一个式子,由于$n!$是唯一确定的,所以只要确定了$x$,$y$也是确定的,而且是唯一确定的一组$(x,y)$. 根据唯一分解定理,$n!=p_1^{k_1}p_2^{k_2}...p_m^{k_…