#include <bits/stdc++.h>
using namespace std;
/*
题意:给出n,求1/n=1/x+1/y(n,x,y=1,2,3...)的解的个数,找出最小的n,构成1/n的式子超过1000
设x=n+a,y=n+b,化简可得n^2=a*b.设n^2的因子个数为p,n^2的所有因子中除n外都是成对出现的,故方程解数为(p+1)/2。
比如n=4,则x=8,y=8;x=20,y=5;x=12,y=6 一共有3种情况
一个数的约数必然包括1及其本身。
因为n <= 10^9,则n^2是一个很大的数,在时间和空间上都不允许直接操作,考虑到任何整数n都可以表示为 n = p1^e1*p2^e2*..pn^en,其中p1,p2..,pn都为素数,
并且n的约数个数为 (1+e1)*(1+e2)*...(1+en);
所以n^2 = (p1^e1*p2^e2...pn^en)^2 = p1^2e1*p2^2e2...*pn^2en,故其约数个数为(1+2e1)*(1+2e2)*...(1+2en);
所以只需求出n的约数个数即可,每次求出ek(k=1,2,3,4..)的时候,将结果乘上2即可。
//除不尽,说明n是大于sqrt(10^9)的素数,ret *= (1 + 2*1);
是正整数,则形如
n=p⑴^β⑴·p⑵^β*⑵·…·p(k)^β(k)
的数都是n的约数,其中β⑴可取a⑴+1个值:0,1,2,…,α⑴;β⑵可取α⑵+1个值:0,1,2,…,α⑵…;β(k)可取a(k)+1个值:0,1,2,…,α(k).且n的约数也都是上述形式,根据乘法原理,n的约数共有
(α⑴+1)(α⑵+1)…(α(k)+1)
*/
int getCount(int n)
{
int p = 0;
vector<int> temp(1009,0);
// for(int i = 2; i * i <= n; ++i)
for(int i = 2; i <= n; ++i)
{
if(n%i == 0)
{
while(n % i == 0)
{
++temp[p];
n /= i;
}
++p;
}
}
// if(n != 1) //除不尽,说明n是大于sqrt(10^9)的素数,ret *= (1 + 2*1);
// {
// ++temp[p];
// ++p;
// }
for(int i = 0; i < p; ++i)
temp[i] *= 2;
int ans = 1;
for(int i = 0; i < p; ++i)
ans *= (temp[i] + 1);
return (ans+1)/2;
}
int main()
{
int n;
cin >> n;
cout<< getCount(n) << endl;
return 0;
}
相关推荐
7-21 求特殊方程的正整数解 (15分) 本题要求对任意给定的正整数N,求方程X2+Y2=N的全部正整数解。 输入格式: 输入在一行中给出正整数N(≤10000)。 输出格式:
7-21求特殊方程的正整数解(15分) 本题要求对任意给定的正整数N,求方程X2+Y2=N的全部正整数解。 输入格式: 输入在一行中给出正整数N(≤10000)。 输出格式: 输出方程X2+Y2=N的全部正整数解,其中X≤Y。每组解占1行,两数字间以1空格分隔,按X的递增顺序输出。如果没有解,则输出No Solution。 输入样例1: 884 输出样例1: 10 28 20 22 输入样例2: 11 输出样例2: No Solution ..
poj2917
题意:给出n,求1/n=1/x+1/y(n,x,y=1,2,3...)的解的个数 分析:n = (x*y)/(x+y) (x+y)*n = x*y设x = n+a; y = n+b带入可以得到n*n = a*b题目就转化成了求所有整数对使得a*b = n*n。 即求n*n的约数个数,由于约数都是成对出现的,两数乘积为n^2,为奇数是因为n与n成对出现,而只计算了1次。为避免重复,设约数个数为p...
USTCOJ 1271 方程X+2Y+5Z=N非负整数解计数
方程非负整数解计数:http://acm.ustc.edu.cn/ustcoj/problem.php?id=1271&contest=35 题目的大致意思,是读入一个非负整数N,然后求出X、Y、Z非负整数解。解这道题的朴素方法,自然是设置一个计数变量counter,然后利用一个三重循环(或者两重),依次对X、Y、Z赋值,当X、Y、Z的组合满足方程时,counter变量自增,最后输出counte
SPOJ Equation :求 1/n!=1/x+1/y 的解的个数
题目地址:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=29547#problem/M 解析: 题目就是求1/n! = 1/x + 1/y 的解的个数,看样例知要考虑(x,y)对数的关系。 设 m=n! ,由等式知x,y必定大于n!,所以再设 x=n!+k=m+k 带入 1/m=1/x+1/y 中化简得到y=m*m/k+m,因
SDUT 1447 水题(y*y = x*x + n)
水题 Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^ 题目描述 给定一个正整数 n,求一个最小的正整数 x,使得可以找到一个正整数y,且满足 y*y = n + x*x。 输入 输入包含多组测试数据。 每组数据只有一行为 1 个整数 n(0 输出 对于每组测
容斥求[1,n]中与x互质的数字个数
数据范围:n,x均是不超过1e18的正整数。 首先对x进行质因子分解后:x=p1q1∗p2q2∗p3q3∗...∗pzqzx=p_1^{q_1}*p_2^{q_2}*p_3^{q_3}*...*p_z^{q_z}x=p1q1∗p2q2∗p3q3∗...∗pzqz,p为质因子,z的长度不会超过17个,17个质数的连乘已经到1e18的范围了。 其次如果要算出与x的gcd不为1的个数的话...
求1/X+1/Y= 1/N的所有正整数解
第一行输入一个正整数M,下面有M行,每一行都是一个正整数N. 输出共M行,每行都是方程解的个数. Sample Input: 2 1 2 Sample Output: 1 3 提示:当N=2时,共有三个解 X=4,Y=4; X=3,Y=6;X=6,Y=3. #include #include struct TOne { int nFac
Python | 求方程X2+Y2=N的全部正整数解
欢迎点击「算法与编程之美」↑关注我们!本文首发于微信公众号:"算法与编程之美",欢迎关注,及时了解更多此系列文章。问题描述该问题的原题描述为:本题要求对任意给定的正整数N...
求出所有的1/k=1/x+1/y的情况
//输入正整数k,求出所有的1/k=1/x+1/y的情况,其中正整数x>=y; //由数学知识可以求出y的范围 #include"stdio.h" #include"stdlib.h" void main() {int k,y,n=0; scanf("%d",&k); for(y=k+1;y if((k*y%(y-k))==0) {printf("\n1/%d=1/%d+1/%d
激光SLAM算法性能对比:在Ubuntu20.04上实测Point-LIO/FAST_LIO2/Faster-LIO的运行效果
本文在Ubuntu 20.04平台上对Point-LIO、FAST-LIO2和Faster-LIO三款激光SLAM算法进行了深度实测与性能对比。通过量化分析绝对轨迹误差、CPU/内存占用及单帧处理延迟等核心指标,结合室内外场景数据,为高精度测绘、服务机器人及自动驾驶等不同应用场景提供了清晰的选型指南和实战调优建议。
EPLAN电气设计精华 -模拟量传感器画法全解
本文介绍了EPLAN中模拟量压力传感器的标准画法要点,重点解析了电流型(4-20mA)、电压型(0-10V/0-5V)和特定应用型三种传感器的核心特点、典型符号、接线方式及应用场景。文章提供了EPLAN设备标识符示例,并分享了一个实际项目案例(XJC-Y01-20-4M传感器配合XJC-608T-F变送器和GSEE.GXLK-AI4S-I模块的应用),强调绘制前查阅技术资料的重要性。内容简明实用,有助于规范电气设计中的传感器绘制。
1/X+1/Y=1/N!的两种O(n)做法
题目大意: 求1/X+1/Y=1/N!的答案对数。 解题思路1: 设 m=n! ,由等式知x,y必定大于n!,所以再设 x=n!+k=m+k 带入 1/m=1/x+1/y 中化简得到y=m*m/k+m,因y为整数,所以要求k整除m*m,即k为m*m的因子,问题便转化为求n!*n!的因子个数, 设n!=p1^e1 * p2^e2 * p3^e3 *...*pk^ek,则 n!*n!=
(八)基于MuJoCo的LeRobot SO100仿真操控实战指南(操作优化)
本文详细介绍了如何在MuJoCo仿真环境中搭建并优化LeRobot SO100机械臂的操控。通过两种核心模式(纯键盘仿真与实机镜像同步)的实战演示,重点讲解了关键的参数标定方法,以实现虚拟模型与真实硬件的精准同步。文章还提供了性能优化技巧,旨在帮助开发者构建高效、安全的机器人算法开发与测试流程。
7-21 求特殊方程的正整数解 (15 分) 本题要求对任意给定的正整数N,求方程X 2 +Y 2 =N的全部正整数解。
输入格式: 输入在一行中给出正整数N(≤10000)。 输出格式: 输出方程X 2 +Y 2 =N的全部正整数解,其中X≤Y。每组解占1行,两数字间以1空格分隔,按X的递增顺序输出。如果没有解,则输出No Solution。 输入样例1: 884 输出样例1: 10 28 20 22 输入样例2: 11 输出样例2: No Solution # include <stdio....
2024 年 9 月青少年软编等考 C 语言三级真题解析
2024 年 9 月青少年软编等考 C 语言三级真题解析。
【四足机器人项目实战】四足机器人嵌入式硬件设计
系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录系列文章目录前言一、电源管理板设计及制作二、通讯中继板设计及制作三、力控无刷电机驱动板设计及制作1.磁场定向控制FOC控制原理2.电机转子位置、速度检测原理3.硬件CAN通讯原理 前言 认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长! 本文先对四足机器人–嵌入式硬件设计做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章 提示:以下是本篇文章正文内容 一、电
求N个数的最小公倍数
题目描述 求n(n <= 50)个数的最小公倍数。 输入 输入包含多个测试实例,每个测试实例的开始是一个正整数n,然后是n个正整数。 输出 为每组测试数据输出它们的最小公倍数,每个测试实例的输出占一行。你可以假设最后的输出是一个32位的整数。 样例输入 2 4 6 3 2 5 7 样例输出 12 70 在数学上,我们求几个数的最小公倍数的方法是对他们分解质因数,...
YOLO26中的PPM空间金字塔池化:改良设计与多尺度特征提取教程
在计算机视觉的语义分割任务中,准确理解图像中的上下文信息至关重要。例如,在街景图像中,可能同时存在远处的小汽车和近处的大建筑物,网络需要具备捕获多尺度上下文信息的能力。例如,要正确识别图像中的"船",不仅需要看到船本身的特征,还需要理解周围的水面环境。金字塔的每一层对应不同的池化尺度,从细粒度到粗粒度,形成了多层次的特征表示。PPM(Pyramid Pooling Module)正是为了解决这一问题而提出的模块,它通过构建金字塔形状的池化结构,有效地聚合不同尺度的上下文信息,从而提升语义分割的精度。
数学分析(五)-导数和微分4-高阶导数3:y=sinx的各阶导数【sin⁽ⁿ⁾x=sin(x+nπ/2)】、y=cosx的各阶导数【cos⁽ⁿ⁾x=cos(x+nπ/2)】其中:n∈N₊
继续求导, 将出现周而复始的现象. 为了得到一般。阶导数公式,可将上述导数公式改写为。, 由三角函数的求导公式得。
60、新型共轴直升机建模与事件触发积分强化学习研究
本文研究了新型共轴直升机的动力学建模与控制方法,基于牛顿-欧拉方程建立了6自由度非线性模型,并设计了四通道闭环控制器实现稳定飞行。同时,提出一种事件触发积分强化学习方法,用于解决非零和博弈中的最优跟踪控制问题,在减少通信开销的同时保证系统性能。通过仿真验证了控制器的轨迹跟踪能力,并证明了算法下跟踪误差与神经网络权重估计误差的一致最终有界性。两种方法协同可提升飞行器的自主性与鲁棒性,未来可拓展至多智能体协作、智能交通等复杂系统应用。
杰理可视化SDK开发-杰理AC1123N芯片SDK开发笔记合集
该文档主要描述 AC112N开发相关的使用说明和注意事项,收集并持续更新开发调试过程中的相关疑问和解答,对SDK介绍文档做一个补充说明。写作人:李永奉,参考项目MD-026H; AC112N-SDK项目帮助文档在杰理开发者平台(JL DP)'帮助'处进入,如本文档有与后续帮助文档或工具注释说明冲突,以后者为标准。
Python|求方程X2+Y2=N的全部正整数解
本文首发于微信公众号:"算法与编程之美",欢迎关注,及时了解更多此系列文章。问题描述该问题的原题描述为:本题要求对任意给定的正整数N,求方程X2+Y2=N的全部正整数解。给...
visio安装包
Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。
为什么基础解系的个数是n-r
Ax=b的解(满足公式的x)有三种情况,无解,有唯一解和有无穷解。基础解系讲的是有无穷解的情况。只有在A不满秩的时候,才会有无解或有无穷解的情况出现。 基础解系的“个数”不是指有多少个解,而是指这些无穷个解所构成的子空间的秩。比如,若矩阵的秩为r=n-1,那么,基础解系的就是1了。但是,这个1不是指这个基础解系里只有一个解(向量),而是指这个基础解系的空间的秩是1,在这个秩与为1的空间中有无数解(向量)x,而这些x都满足y=Ax。 如果解空间的秩为1,那么,所有的解都在一根直线上,你拿其中任何一个解出来
TMS_WebGMaps_1.9.8.0_Full_Source
TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder
pscad IEEE标准系统搭建说明
pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。
PTA7-15求尾数(附代码) 求x的y次方的最后n位数。输入格式:输入在一行中依次给出3个正整数x,y,n,其中x,y小于1000,n小于6。
PTA
Probability and Statistics - 4th edition
Probability and Statistics - 4th edition
F - 等式(1/x + 1/y = 1/n)
链接:https://www.nowcoder.com/acm/contest/90/F来源:牛客网 题目描述 给定n,求1/x + 1/y = 1/n (x<=y)的解数。(x、y、n均为正整数) 输入描述: 在第一行输入一个正整数T。接下来有T行,每行输入一个正整数n,请求出符合该方程要求的解数。(1<=n<=1e9) 输出描述: ...
8801



被折叠的 条评论
为什么被折叠?



