首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

正整数的划分有关问题

2012-12-19 
正整数的划分问题/* * 正整数的划分问题 * 6 * 5+1 * 4+24+1+1 * 3+33+2+13+1+1+1 * 2+2+22+2+1+12+1

正整数的划分问题

/* * 正整数的划分问题 * 6 * 5+1 * 4+2=4+1+1 * 3+3=3+2+1=3+1+1+1 * 2+2+2=2+2+1+1=2+1+1+1+1 * 1+1+1+1+1+1 */#include<stdio.h>/* * 将正整数n分解为最大加数为m的组合 */int getDivideNum(int m,int n){    if(m==1||n==1)return 1;    else if(m>n)return getDivideNum(n,n);    else if(m==n)return 1+getDivideNum(m-1,n);    else if(m<n)return getDivideNum(m-1,n)+getDivideNum(m,n-m);}int main(){    int m,n;    m=2;    n=6;    int count=getDivideNum(m,n);    printf("count=%d\n",count);    return 0;}

?

int main(){ int n = 6,i,j; int a[n+1]; a[0]=1; for(i=1;i<n;i++) for(j=i;j<n;j++) a[j]+=a[j-i] printf("count:%d\n",a[n]);}int main(){ int n = 6,i,j; int a[n+1]; a[0]=1; for(i=1;i<=n;i++) for(j=i;j<=n;j++) a[j]+=a[j-i] printf("count:%d\n",a[n]);}

热点排行