codevs——2548 自然数积分解
把自然数N分解为若干个自然数之积,输出方案数。
自然数N,(1≤n≤2000000000)
方案数
20
4
20 可分为
20
4 5
2 10
2 2 5
dfs
我们暴力枚举可以分解成的数的第一个数枚举出来,这就跟自然数划分成和一样,要保证不重复,那么前面的数一定要比后面的数小,如果比后面的数小的话,那么这种划分方案一定已经存在过了,然后我们判断,现在我们分解成的数的另外的一个因数,如果当前数可以整除我们枚举出来的因数,那么也就说明我们可以将数分为当前因数及当前数除以当前因数,那么划分方案数就可以加一
是不是感觉很乱,我们来看个样例,即当n=8时,我们先枚举到2,然后判断8%2==0 那么4即为另一个因子,方案数+1,然后第二次2,判断4%2==0,则另一个因子为2,2*2*2=8,方案数++
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
],ans;
int read()
{
,f=; char ch=getchar();
') ch=getchar();
+ch-'; ch=getchar();}
return x*f;
}
void dfs(int k,int s)
{
;i*i<=s;i++)
{
)
ans++,dfs(i,s/i);
}
}
int main()
{
n=read();
dfs(,n);
printf();
;
}
codevs——2548 自然数积分解的更多相关文章
- Codevs 2549 自然数和分解
2549 自然数和分解 时间限制: 1 s 空间限制: 32000 KB 题目等级 : 白银 Silver 传送门 题目描述 Description 把自然数N分解为若干个自然数之和,输出方案数. 输 ...
- AC日记——自然数和分解 codevs 2549
自然数和分解 思路: 水题: 代码: #include <bits/stdc++.h> using namespace std; ][]; int main() { cin>> ...
- codevs 2612 最有分解方案 (贪心)
/* 数字不重复 将一个正整数分解成若干的整数的和 数字不重复 且数字不相同 保证不重复的话 贪心策略是从2开始分 然后把最后剩下的数均匀分到后面 证明嘛 这里写的可能不是很严谨 对于一个n 如果我们 ...
- codevs:1313 质因数分解:已知正整数 n是两个不同的质数的乘积,试求出较大的那个质数 。
#include<iostream>#include<cstdio>#include<cmath>using namespace std;int a[2];int ...
- codevs 搜索题汇总(青铜+白银级)
1792 分解质因数 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 青铜 Bronze 题目描述 Description 编写一个把整数N分解为质因数乘积的程序. 输入描 ...
- Java实现k个数乘(cheng)(自然数的k乘积问题)
k个数乘(cheng) 题目描述 桐桐想把一个自然数N分解成K个大于l的自然数相乘的形式,要求这K个数按从小到大排列,而且除了第K个数之外,前面(K-l)个数是N分解出来的最小自然数.例如:N=24, ...
- 【简●解】POJ 1845 【Sumdiv】
POJ 1845 [Sumdiv] [题目大意] 给定\(A\)和\(B\),求\(A^B\)的所有约数之和,对\(9901\)取模. (对于全部数据,\(0<= A <= B <= ...
- Internet History, Technology and Security (Week⑨)
Week ⑨ We are now on the second to last week of the class and finishing up our look at Internet Secu ...
- 【bzoj1025】[SCOI2009]游戏
1025: [SCOI2009]游戏 Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 1987 Solved: 1289[Submit][Status] ...
随机推荐
- 【php】【趣味代码】对象引用的比较
<?php $a = new stdClass(); $a->name = 'flint'; $b = $a ; $b->sex = 'man'; saveObject($b); f ...
- python文件打包为exe可执行文件的方法
我自己常用Pyinstaller库打包 第一步: 安装pyinstaller库 pip install pyinstaller 第二步: 在py文件所在目录输入 mydemo.py是自己写的py文 ...
- poj3617 best cow line(贪心题)
Best Cow Line Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 32687 Accepted: 8660 De ...
- <node>……express的中间件……//
Express是一个基于Node.js平台的web应用开发框架,在Node.js基础之上扩展了web应用开发所需要的基础功能,从而使得我们开发Web应用更加方便.更加快捷. 中间件是什么? 中间件函数 ...
- 2019 study list
分析工具: (1)SQL select from where group by having order by limit 运算符(算数运算符+-*/.比较运算符>< ...
- JSP 页面 jstl 时间戳 long型转时间
转载http://www.cnblogs.com/gmq-sh/p/5528989.html
- 【Linux】tcpdump命令详解
tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析. 它支持针对网络层.协议.主机.网络或端口的过滤,并提供and.or.not等逻辑语句帮你过滤到无用的信息. 实用命令实例 1.普通 ...
- LoadRunner 手动关联
步骤: 1.同样的流程录制两遍,保存在不同的项目中, 2.点击Tools >> Compare with Script 3.选择要比对的脚本 3.找辨识码 4.打开辨识码所在网页,查看源代 ...
- Python中__get__ ,__getattr__ ,__getattribute__用法与区别?
class C(object): a = 'abc' def __getattribute__(self, *args, **kwargs): print("__getattribute__ ...
- [python][oldboy]python涉及的几种编码
1 python文件代码中中文的识别 (换言之,python代码的中文不显示乱码)和解析u"中文"这样的unicode对象 # coding=utf8 2 python运行环境(I ...