整数分解 && 质因数分解
输入整数(0-30)分解成所有整数之和。每四行换行一次。
一种方法是通过深度优先枚举出解。通过递归的方式来实现。
#include <stdio.h>
#include <string.h>
#define MAXN 30
#define MAXString 64
int Terms[MAXN];
int N;
int Count; void Search(int Remainder,int Start,int nTerm)
{
int i;
if(Remainder == ){
Count++;
if(Count%!=)
printf(";");
printf("%d=%d",N,Terms[]);
for(i=;i<nTerm;i++)
printf("+%d",Terms[i]);
if(Count%==)
printf("\n");
}
else
{
for(i=Start;i<=Remainder;i++){
Terms[nTerm]=i;
Search(Remainder-i,i,nTerm+); }
}
}
void Test1()
{
scanf("%d",&N);
Count=;
Search(N,,); if(Count%!=)
printf("\n");
}
void Search1(int Remainder, int Start,char *STerms)
{
int i;
char Tmps[MAXString];
strcpy(Tmps,STerms);
for(i=Start;i<=Remainder;i++)
{
if(Remainder-i>=i)
{
sprintf(Tmps+strlen(STerms),"%d+",i);
Search1(Remainder-i,i,Tmps); }else if(Remainder-i==)
{
sprintf(Tmps+strlen(STerms),"%d ",i);
Count++;
if(Count%!=)
printf(";");
printf("%s",Tmps);
if(Count%==)
printf("\n"); } }
}
void Test2()
{
char STerms[MAXString]="";
int N;
Count=;
scanf("%d",&N);
Search1(N,,STerms);
if(Count%!=)
printf("\n"); }
第二种方法是试探下一次是否达到边界,避免了第一种方法的多次无效递归。

质因数分解,输入大整数long int并分解其为素数的乘积
//整数分解成素因子
void Decomposed(long int data){ int i;
int si=0;
int temp=data;
for(i=2;i<=temp;i++){
if(temp!=i)
{
while(true){
if(temp%i==0 && temp/i!=1){
printf("%d*",i);
temp/=i;
//printf("temp=%d,i=%d\n",temp,i);
}else if(temp%i==0 && temp/i==1){
printf("%d",i);
temp/=i;
//printf("temp=%d,i=%d\n",temp,i);
}
else
break;
}
}else{
printf("%d\n",i);
si=1;
} }
if(si==0)
printf("\n"); } void TestDecomposed(){
long int x=1000234;
printf("%ld=",x);
Decomposed(x);
}

整数分解 && 质因数分解的更多相关文章
- Project Euler 29 Distinct powers( 大整数质因数分解做法 + 普通做法 )
题意: 考虑所有满足2 ≤ a ≤ 5和2 ≤ b ≤ 5的整数组合生成的幂ab: 22=4, 23=8, 24=16, 25=3232=9, 33=27, 34=81, 35=24342=16, 4 ...
- C语言 · 分解质因数
问题描述 求出区间[a,b]中所有整数的质因数分解. 输入格式 输入两个整数a,b. 输出格式 每行输出一个数的分解,形如k=a1*a2*a3...(a1<=a2<=a3...,k也是从小 ...
- Java实现 蓝桥杯VIP 基础练习 分解质因数
题目介绍 问题描述 求出区间[a,b]中所有整数的质因数分解. 输入格式 输入两个整数a,b. 输出格式 每行输出一个数的分解,形如k=a1a2a3-(a1<=a2<=a3-,k也是从小到 ...
- python基础练习题(题目 将一个整数分解质因数。例如:输入90,打印出90=2*3*3*5)
day9 --------------------------------------------------------------- 实例014:分解质因数 题目 将一个整数分解质因数.例如:输入 ...
- algorithm@ 大素数判定和大整数质因数分解
#include<stdio.h> #include<string.h> #include<stdlib.h> #include<time.h> #in ...
- 大整数分解质因数(Pollard rho算法)
#include <iostream> #include <cstring> #include <cstdlib> #include <stdio.h> ...
- 程序设计入门——C语言 第6周编程练习 1 分解质因数(5分)
1 分解质因数(5分) 题目内容: 每个非素数(合数)都可以写成几个素数(也可称为质数)相乘的形式,这几个素数就都叫做这个合数的质因数.比如,6可以被分解为2x3,而24可以被分解为2x2x2x3. ...
- 【BZOJ-4514】数字配对 最大费用最大流 + 质因数分解 + 二分图 + 贪心 + 线性筛
4514: [Sdoi2016]数字配对 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 726 Solved: 309[Submit][Status ...
- 【基础数学】质数,约数,分解质因数,GCD,LCM
1.质数: 质数(prime number)又称素数,有无限个.一个大于1的自然数,除了1和它本身外,不能整除以其他自然数(质数),换句话说就是该数除了1和它本身以外不再有其他的因数. 2.约数: 如 ...
随机推荐
- 2015年辽宁省赛Interesting Tree
题目描述 Recently, Miss Huang want to receive a Tree as her birthday gift! (What a interesting person!) ...
- htop查看系统负载
htop 是 Linux 系统中的一个互动进程查看器,可以让用户进行交互式操作,可横向或纵向滚动浏览进程列表,支持鼠标操作.用户可以在安装 htop 来监控服务器的负载. 01.下载 https:// ...
- Beta项目冲刺--第三天
又找回熟悉的感觉.... 队伍:F4 成员:031302301 毕容甲 031302302 蔡逸轩 031302430 肖阳 031302418 黄彦宁 会议内容: 1.站立式会议照片: 2.项目燃尽 ...
- 修改placehosder
CSS美化INPUT placeholder效果.CSS代码美化文本框里的placeholder文字. ::selection伪元素 简而言之:单冒号(:)用于CSS3伪类,双冒号(::)用于CSS3 ...
- 如何生成HTMLTestRunner报告
今天,学习了如何生成HTMLTestRunner测试报告. 接上篇文章,对于unittest框架,运行后,测试结果不便于查看,同时多个case存在的时候,可能会导致case result记录不正确的情 ...
- 系统间通信(10)——RPC的基本概念
1.概述 经过了详细的信息格式.网络IO模型的讲解,并且通过JAVA RMI的讲解进行了预热.从这篇文章开始我们将进入这个系列博文的另一个重点知识体系的讲解:RPC.在后续的几篇文章中,我们首先讲解R ...
- 【USACO】Transformations(模拟)
Transformations A square pattern of size N x N (1 <= N <= 10) black and white square tiles is ...
- String,Date,XMLGregorianCalendar的转换
常见标准的写法"yyyy-MM-dd HH:mm:ss",区分大小写,时间是24小时制,24小时制转换成12小时制只需将HH改成hh. String to Date: String ...
- 【BZOJ-3144】切糕 最小割-最大流
3144: [Hnoi2013]切糕 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 1261 Solved: 700[Submit][Status] ...
- springMVC-错误消息的显示和国际化
显示:在页面添加<form:errors path="*">会把错误消息集中显示在一块 在页面添加<form:errors path="lastname ...