因式分解
Time Limit: 1000 ms Memory Limit: 65536 KiB
Submit Statistic Discuss
Problem Description

将大于1的自然数N进行因式分解,满足N=a1*a2*a3…*am。
编一程序,对任意的自然数N(1< N<=2,000,000,000),求N的所有形式不同的因式分解方案总数。如N=12,共有8种分解方案,他们分别是:
12=12
12=6*2
12=4*3
12=3*4
12=3*2*2
12=2*6
12=2*3*2
12=2*2*3
Input

输入只有一行,一个整数N。
Output

输出只有一行,一个整数表示自然数N的因式分解方案总数。
Sample Input

12
Sample Output

8

鉴于这个题目的数据有点大(1< N<=2,000,000,000),所以我一开始的想法是这样的,开一个数组记录一下每个数字的因式分解数目,但是这个题只有一个输入。。。并且这样做的时间实在是长的很:

#include<stdio.h>
#include<stdlib.h>
#include<iostream>
using namespace std;
int s[400000]={0};
int main(){s[2]=1;int n;int sum=0;cin>>n;for(int j=3; j<=n; j++){for(int k=2; k<j; k++){if(!(j%k)){s[j]+=s[k];}}s[j]++;}cout<<s[n]<<endl;
}

所以后来又改成了递归的做法,其实这样做应该是不对的,但是居然AC了,只能说后台的测试点有点问题啊。。。但是单看这个问题的时间空间要求,实在是没找出好的方式,百度了一下发现有的题目空间允许的比较大。。。现在这里占个坑记录一下吧:

#include<stdio.h>
#include<iostream>
using namespace std;
int cou=1;
int fun(long long int n){for(long long int i=2; i<n; i++){if(!(n%i)){fun(n/i);cou++;}}
}
int main(){long long int n;cin>>n;fun(n);cout<<cou<<endl;
}

SDUT-1150 因式分解相关推荐

  1. PHP递归法因式分解,[分治算法]因式分解

    整数因子分解问题 http://acm.sdut.edu.cn/onlinejudge2.dev/index.php/Home/Index/problemdetail/pid/1722.html Ti ...

  2. sdut 2401 最大矩形面积

    1http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2401 /* 2 最大矩形面积,把边界点加上 ...

  3. sdut AOE网上的关键路径(spfa+前向星)

    http://acm.sdut.edu.cn/sdutoj/showproblem.php?pid=2498&cid=1304 题目描述 一个无环的有向图称为无环图(Directed Acyc ...

  4. python 最快 因式分解_python中怎么对一个数进行因式分解?

    1.Python因式分解代码:import time # 对一个数进行因式分解 def factorization(num): factor = [] while num > 1: for i  ...

  5. java分解因式_用JAVA因式分解 并以9=3×3格式输出

    //输入一个数字,判断是否为素数,如果不是素数,请因式分解packagehomework;importjava.util.Scanner;publicclasshomework7{publicstat ...

  6. 最大公因数、最小公倍数、因式分解

    最大公因数使用辗转相除法来求,最小公倍数则由这个公式来求: GCD * LCM = 两数乘积 解法最大公因数可以使用递回与非递回求解,因式分解基本上就是使用小于输入数的数值当作除数,去除以输入数值,如 ...

  7. SDUT 2401 最大矩形面积

    http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2401 话说GSB 出的这个题确实不大好想,给定 ...

  8. HDU-4516 威威猫系列故事——因式分解 多项式分解

    题意:给定一个多项式,对其进行因式分解. 解法:由于多项式每一项系数绝对值不超过1000,由于最后解的形式为(x-a)(x-b)(x-c)(x-d)(x-e)其中a*b*c*d*e一定是最后的常数项系 ...

  9. POJ 1150 The Last Non-zero Digit 《挑战程序设计竞赛》

    为什么80%的码农都做不了架构师?>>>    POJ 1150 The Last Non-zero Digit超大组合数:求超大组合数P(n, m)的最后一个非零位.4.1更加复杂 ...

  10. factor--符号矩阵的因式分解

    [功能简介]求符号表达式的因式分解,此外还能对整数进行素数因子分解. [语法格式] 1.f=factor(n) 对整数n进行素数因子分解,返回包含n的素数因子的行向量. 2.factor(X) 对符号 ...

最新文章

  1. 已解决:CentOS 7安装Docker Compose
  2. 【Android LibGDX游戏引擎开发教程】第07期:中文字体的显示和绘制(上)
  3. Java实现身份证号码的验证,JAVA后台验证身份证号码
  4. arm放弃服务器芯片,ARM溃败:Applied Micro拆分ARM架构服务器芯片业务
  5. c语言中case1 case3 n =1,(n 1)-Step Derivations on n-Groupoids: The Case n = 3
  6. eclipse常用设置及调试快捷键
  7. python开发信息系统权限设置_python Django 用户管理和权限认证
  8. NYOJ 61:传纸条(一)(三维DP)
  9. 计算机怎么办错误,电脑日志错误怎么办
  10. MATLAB读取图像相关的一些操作
  11. TTL与CMOS电路小结
  12. C++:这天星期几?
  13. Nodejs 使用 Buffer 将图片转为 base64
  14. 对于APIC的一些资料
  15. MySQL数据库:SQL语句优化
  16. xp如何配置信息服务器地址,xp如何配置信息服务器地址
  17. 【POJ】1819.Disks
  18. How to recover from #39;programmers burnout(转)
  19. 想在 Ubuntu 上放飞梦想的小黑菜(2)
  20. 如何实现计算机网络资源共享,计算机网络最主要的功能是实现网络资源共享

热门文章

  1. python登录网页后抓取数据_Python抓取网页数据的终极办法
  2. pipeline的相关解释(instruction pipeline)
  3. python3.9安装教程_Python 3.9.0详细图文安装教程(附安装包) | 我爱分享网
  4. 杭电 HDU 1234 开门人和关门人
  5. 设置默认浏览器为Chrome
  6. 80x86的寻址方式及Dosbox演示
  7. 基于eBox的LTC1446驱动
  8. wan端口未连接怎么弄_wan口未连接是什么意思?怎么解决
  9. 观点 | 未来的货币,是可编程的电子货币
  10. 【amp;#9733;】选择好游戏认准这30个特质!