题面

又懒得弄题面,开个传送门吧

分析

人生第一次切数学题,我们先把方程写出来

$$\frac {1}{x}+\frac {1}{y}=\frac {1}{n!}$$

现在我们知道的条件是x,y都是正整数(废话  所以我们考虑单独通过式子的变换将x,y表示出来,表示出来的式子算出来也一定是个整数

$$\frac {1}{x}+\frac {1}{y}=\frac {1}{n!}$$

$$\frac {1}{x}=\frac {1}{n!}-\frac{1}{y}$$

$$\frac {1}{x}=\frac {y-n!}{n!\times y}$$

$$x=\frac {n!\times y}{y-n!}$$

那么$\frac {n!\times y}{y-n!}$一定是一个整数

分母不太好看,不利于观察,所以假设$a=y-n!$,那么$y=a+n!$

那么原方程可以化简为

$$x=\frac {n!\times (a+n!)}{a}=\frac {n!\times a+n!\times n!}{a}=n!+\frac {n!\times n!}{a}$$

所以,如果$a$是$n!\times n!$的约数,根据$y=a+n!$与$x=n!+\frac {n!\times n!}{a}$可以知道x,y都是正整数

所以$n!\times n!$有多少个约数就有多少组解,直接分解质因数然后乘法原理计算就好了

Code

#include<cstdio>
int n,p[],unp[],mn[],mp[];
void prework()
{
unp[]=;
for(int i=;i<=;i++)
{
if(!unp[i])p[++p[]]=i,mn[i]=p[];
for(int j=;1ll*p[j]*i<=;j++)
{
unp[p[j]*i]=;mn[p[j]*i]=j;
if(i%p[j]==)break;
}
}
}
int main()
{
prework();scanf("%d",&n);
for(int i=;i<=n;i++)
{
int x=i;
while(x>)mp[p[mn[x]]]++,x/=p[mn[x]];
}
int ans=;
for(int i=;i<=n;i++)ans=1ll*ans*(mp[i]*+)%;
printf("%d\n",ans);
}

【洛谷】P4167 [Violet]樱花的更多相关文章

  1. 洛谷P1445 [Violet] 樱花 (数学)

    洛谷P1445 [Violet] 樱花 题目背景 我很愤怒 题目描述 求方程 1/X+1/Y=1/(N!) 的正整数解的组数,其中N≤10^6. 解的组数,应模1e9+7. 输入输出格式 输入格式: ...

  2. BZOJ2721或洛谷1445 [Violet]樱花

    BZOJ原题链接 洛谷原题链接 其实推导很简单,只不过我太菜了想不到...又双叒叕去看题解 简单写下推导过程. 原方程:\[\dfrac{1}{x} + \dfrac{1}{y} = \dfrac{1 ...

  3. 【题解】洛谷P1445 [Violet]樱花 (推导+约数和)

    洛谷P1445:https://www.luogu.org/problemnew/show/P1445 推导过程 1/x+1/y=1/n! 设y=n!+k(k∈N∗) 1/x​+1/(n!+k)​=1 ...

  4. 洛谷 P1445 [Violet]樱花

    #include<cstdio> #include<algorithm> #include<cstring> #include<vector> usin ...

  5. Luogu P1445[Violet]樱花/P4167 [Violet]樱花

    Luogu P1445[Violet]樱花/P4167 [Violet]樱花 真·双倍经验 化简原式: $$\frac{1}{x}+\frac{1}{y}=\frac{1}{n!}$$ $$\frac ...

  6. 洛谷 P4169 [Violet]天使玩偶/SJY摆棋子 解题报告

    P4169 [Violet]天使玩偶/SJY摆棋子 题目描述 \(Ayu\)在七年前曾经收到过一个天使玩偶,当时她把它当作时间囊埋在了地下.而七年后 的今天,\(Ayu\) 却忘了她把天使玩偶埋在了哪 ...

  7. 洛谷 P4168 [Violet]蒲公英 解题报告

    P4168 [Violet]蒲公英 题目背景 亲爱的哥哥: 你在那个城市里面过得好吗? 我在家里面最近很开心呢.昨天晚上奶奶给我讲了那个叫「绝望」的大坏蛋的故事的说!它把人们的房子和田地搞坏,还有好多 ...

  8. 洛谷P4169 [Violet]天使玩偶/SJY摆棋子(CDQ分治)

    [Violet]天使玩偶/SJY摆棋子 题目传送门 解题思路 用CDQ分治开了氧气跑过. 将输入给的顺序作为第一维的时间,x为第二维,y为第三维.对于距离一个询问(ax,ay),将询问分为四块,左上, ...

  9. 洛谷 P4168 [Violet] 蒲公英

    历尽千辛万苦终于AC了这道题目... 我们考虑1个区间\([l,r]\), 被其完整包含的块的区间为\([L,R]\) 那么众数的来源? 1.\([l,L)\)或\((R,r]\)中出现的数字 2.\ ...

随机推荐

  1. 利用PHPExcel快速导出excel

    <?php $objPHPExcel = new PHPExcel(); $objSheet = $objPHPExcel->getActiveSheet(); $array = arra ...

  2. JS 中Json常用操作

    转自: https://www.jianshu.com/p/6501b0f3124f 直接定义json var json = {"name": "小明", &q ...

  3. hybris backoffice创建product遇到的synchronization问题和解答

    我从product DSC-H20_MD clone了一个新的product,code为DSC-H20_MD1 因为它的状态有个红灯: 所以我点了这个sync按钮: 结果报这个错: 之后这个clone ...

  4. java web编程 servlet读取配置文件参数

    新建一个servlet. 然后在web.xml文件里面自动帮助你创建好了<servlet-name><servlet-class><servlet-mapping> ...

  5. ConcurrentLinkedQueue (一)

    ConcurrentLinkedQueue 主要讲一下在JDK8中,ConcurrentLikedQueue是如何入队,出队的. 首先我们要明白,ConcurrentLikedQueue是一种安全的没 ...

  6. PHP标记风格,编码规范

    PHP标记风格PHP一共支持4种标记风格 <?php echo "这是XML风格的标记"; ?> 脚本风格 <script language="php& ...

  7. DNS子域授权,区域传送

    dig 命令 +recurse  递归查询 默认    +norecurse 不递归查询 dig +recurse  -t A   www.baidu.com @127.0.0.1 dig  -t a ...

  8. sort对二维字符数组排序

    转载:sort对二维字符数组排序

  9. Optaplanner与Google OR-Tools的区别

    在规划相关的项目工作中,近两年我们的项目主要使用的是Optaplanner作为规划引擎,其核心也是一个的规划求解器(Solver).但作为另一个著名开源求解器Google OR-Tools(下称OR- ...

  10. 【Mac电脑】Burp 设置代理后提示“您的链接不是私密链接”的解决方案

    一.遇到的问题 通过Burp Proxy代理抓包时,遇到的如下情况: 二.解决问题 (1)基础介绍 HTTPS协议是为了数据传输安全的需要,在HTTP原有的基础上,加入了安全套接字层SSL协议,通过C ...