编程高手请进吧!用C语言编程

来源:百度知道 编辑:UC知道 时间:2024/06/02 02:45:19
在1——33这33个数字中随机抽出6个数字,他们的和等于106的组合有几组!急急急啊!!

动态规划算法,总共19760种

#include <stdio.h>

#define target 106

int main( )
{
int f[ target + 1 ][ 7 ], i, j, k;
for ( i = 0; i <= target; i++ )
for ( j = 0; j < 7; j++ )
f[ i ][ j ] = 0;
f[ 0 ][ 0 ] = 1;
for ( i = 1; i <= 33; i++ )
for ( j = target; j >= i; j-- )
for ( k = 0; k < 6; k++ )
if ( f[ j - i ][ k ] )
f[ j ][ k + 1 ] += f[ j - i ][ k ];
printf("%d\n", f[ target ][ 6 ]);
return 0;
}