码迷,mamicode.com
首页 > 其他好文 > 详细

分解整数

时间:2014-05-03 21:24:07      阅读:404      评论:0      收藏:0      [点我收藏+]

标签:c   编程   

分解整数
Description
作为Acmer的你现在接到任务,需要将整数n写成n=x1+x2+…..xk这种形式,其中xi(i>=1&&i<=k)要为奇数。例如n=5,可以写成
5=1+1+1+1+1,5=1+1+3,5=1+3+1,5=3+1+1,5=5这5中形式,求出n有多少种分解方法

Input
有多组输入,输入以文件结尾,每组输入一个整数n

Output
输出分解方案的种数

Sample Input
Original Transformed
4
5

Sample Output
Original Transformed
3
5
#include <stdio.h>
int main(int argc, char *argv[])
{
	int n,a,b,k,l,r;
	while(scanf("%d",&n)!=EOF){
	if(n==1) printf("1\n");
	if(n==2) printf("1\n");
	if(n>2){
		a=1,b=1,k=n-2;
		while(k--){
			l=a+b;
			r=a;a=b;b=r;b=l; 
		}
		printf("%d\n",l);
	}
	}	
	return 0;
}
/*
联想走楼梯;
A8=A7+A5+A3+A1
A7=A6+A4+A2+1;
*/


分解整数,布布扣,bubuko.com

分解整数

标签:c   编程   

原文地址:http://blog.csdn.net/wangjia_to_dream/article/details/24913781

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!