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

真·双倍经验

化简原式:

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

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

$$xy=n!(x+y)$$

$$-n!(x+y)+xy=0$$

$$(n!x+n!y)-xy=0$$

$$(n!)2+(n!x+n!y)-xy=(n!)2$$

$$(x-n!)(y-n!)=(n!)^2$$

所以$(x-n!)$就是$(n!)^2$的一个因子。

又因为$(x-n!)$的数量和$x$相等,那么解的个数就是$(n!)^2$的因数个数。

#include<bits/stdc++.h>
#define N 1000010
#define MOD 1000000007 using namespace std; int n,cnt;
int pri[N];
long long ans=1;
bool vis[N]; void Read() {
scanf("%d",&n);
return;
} void EulerSieve(int x) {
for(int i=2;i<=x;i++) {
if(!vis[i]) {
pri[++cnt]=i;
}
for(int j=1;j<=cnt;j++) {
if(i*pri[j]>x) {
break;
}
else {
vis[i*pri[j]]=1;
}
if(!(i%pri[j])) {
break;
}
}
}
return;
} int Factor(int k,int p) {
if(k<p) {
return 0;
}
else {
return k/p+Factor(k/p,p);
}
} void Solve() {
for(int i=1;i<=cnt;i++) {
ans*=Factor(n,pri[i])*2+1;
ans%=MOD;
}
printf("%lld",ans);
return;
} int main()
{
Read();
EulerSieve(n);
Solve();
return 0;
}

Luogu P1445[Violet]樱花/P4167 [Violet]樱花的更多相关文章

  1. 【洛谷】P4167 [Violet]樱花

    题面 又懒得弄题面,开个传送门吧 分析 人生第一次切数学题,我们先把方程写出来 $$\frac {1}{x}+\frac {1}{y}=\frac {1}{n!}$$ 现在我们知道的条件是x,y都是正 ...

  2. luogu P1445 [Violet]嘤F♂A

    博主决定更博文啦 这道题一开始没什么思路啊qwq 要求 \(\frac{1}{x}+\frac{1}{y}=\frac{1}{n!}\) 的正整数解总数 首先通分,得 \[\frac{x+y}{xy} ...

  3. 让 Terminal/vim 使用 Solarized 配色

    经过亲身体验,终于使用上了solarized的配色,之前配出来相差太多,于是找到这篇参考博文:http://blog.csdn.net/angle_birds/article/details/1169 ...

  4. 160908、前端开发框架Semantic UI

    简介 网页开发中,CSS控制网页样式.作为测试开发工程师,我个人不太擅长手写CSS.样式微调.兼容浏览器等工作,所以我选择使用成熟的前端框架,可以快速开发出样式美观的网站,也解决了大部分浏览器兼容问题 ...

  5. 1352 - Colored Cubes (枚举方法)

    There are several colored cubes. All of them are of the same size but they may be colored differentl ...

  6. POI--帮助文档

    1.创建工作簿 (WORKBOOK) HSSFWorkbook wb = new HSSFWorkbook(); FileOutputStream fileOut = new FileOutputSt ...

  7. jQuery Dom对象操作 增、删、改、复制、包裹

    1. 增(插入) 内部插入 //向每个匹配的元素内部追加内容,为最后一个子元素$('.violet').append('<div></div>'); //把所有匹配的元素追加到 ...

  8. POI3的资料整理

    转自http://aman.cao.blog.163.com/blog/static/32951336201010823557408/ POI3的资料整理一.POI简介 Jakarta POI 是ap ...

  9. POJ2741 Colored Cubes

    Description There are several colored cubes. All of them are of the same size but they may be colore ...

随机推荐

  1. EC11编码器的使用方法

    1. EC11编码器的原理图如下 2. 旋转的时候,波形如下,EC11转1格,产生一个上升沿的中断,思路就是检测AX4-1的上升沿中断(平时是低电平),进入中断服务函数,检测AX4-2的电平,低电平逆 ...

  2. 【网络开发】winsock组播

    https://my.oschina.net/lopo/blog/260685 //客户端 #include <winsock2.h> #include <stdio.h> # ...

  3. 微信小程序bug集

    bug1:navigator标签无法跳转,控制台不报错,解决方案如图

  4. __init__调用之二

    class Bar: def __init__(self,name,age): self.suibian = name #self后的名字是啥,对象就可以调用啥,而不是 __init__ 后括号形参 ...

  5. C++_没有STL不能解决的问题之——<algorithm>

    这个坑好大,慢慢写 一.非修改式序列操作 1.find() 在区间中查找出某元素第一次出现的位置(注意!!是返回地址值) int main(){ ]={,,,,,}; int *b; b=find(a ...

  6. Linux DNS 服务器配置与管理

    一.环境介绍: 运行软件:VMware Workstation Pro 14 系统环境:CentOS-7-x86_64-1810 二.操作配置: 1.基础知识简介 (1)域名空间 域和域名: DNS树 ...

  7. [转帖]Linux文件系统详解

    Linux文件系统详解 https://www.cnblogs.com/alantu2018/p/8461749.html 贼复杂.. 从操作系统的角度详解Linux文件系统层次.文件系统分类.文件系 ...

  8. Python for循环生成列表

    一般Python for语句前不加语句,但我在机器学习实战中看到了这两条语句: featList = [example[i] for example in dataSet] classList = [ ...

  9. 【flume】5.采集日志进入hbase

    设置我们的flume配置信息 # Licensed to the Apache Software Foundation (ASF) under one # or more contributor li ...

  10. CH01-ZYNQ修炼秘籍-LINUX篇-虚拟机环境搭建

    CH01基于Ubuntu系统的ZYNQ-7000开发环境的搭建 1.1概述 实验环境: Windows 10 专业版 Vmware workstation 14.1.1 Ubuntu 16.04.3 ...