33(1到33)个数字,以任意选6个数字相加之和等于104 有几组
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/23 10:52:30
33(1到33)个数字,以任意选6个数字相加之和等于104 有几组
33(1到33)个数字,以任意选6个数字相加之和等于104 有几组
33(1到33)个数字,以任意选6个数字相加之和等于104 有几组
#include
main(){
int a,b,c,d,e,f,g;
long i=0;
for( a=1;a
n = 19995
Sub main()
n = 0
For a = 1 To 33
For b = a + 1 To 33
For c = b + 1 To 33
For d = c + 1 To 33
For e = d + 1 To 33
...
全部展开
n = 19995
Sub main()
n = 0
For a = 1 To 33
For b = a + 1 To 33
For c = b + 1 To 33
For d = c + 1 To 33
For e = d + 1 To 33
For f = e + 1 To 33
If a + b + c + d + e + f = 104 Then n = n + 1
Next f
Next e
Next d
Next c
Next b
Next a
End Sub
收起
#include
int main()
{
int cnt = 0;
int i,j,k,x,y,z;
for(i=1; i<=33; ++i)
for(j=i+1; j<=33; ++j)
for(k=j+1; k<=33; ++k)
for(x=k+1; x<=33; ++x)
...
全部展开
#include
int main()
{
int cnt = 0;
int i,j,k,x,y,z;
for(i=1; i<=33; ++i)
for(j=i+1; j<=33; ++j)
for(k=j+1; k<=33; ++k)
for(x=k+1; x<=33; ++x)
for(y=x+1; y<=33; ++y)
for(z=y+1; z<=33; ++z)
if(i+j+k+x+y+z == 104)
{
printf("%d+%d+%d+%d+%d+%d=104\n",i,j,k,x,y,z);
cnt++;
}
printf("cnt=%d\n",cnt);
}
19995组
收起
那些人的回答貌似看不懂,用中文我来解释一下
用首尾相加的方法分成3组用104除以3,但无法整除,得34余2,即有两组的和数为34,另一组为36,举一个例子
1 33 2 32 5 31,前四个数已定,看最后两个数相加得36即可。有6 30;7 29。。。。。。再看几组
2 32 3 31 6 30
3 31 4 30 7 29
全部展开
那些人的回答貌似看不懂,用中文我来解释一下
用首尾相加的方法分成3组用104除以3,但无法整除,得34余2,即有两组的和数为34,另一组为36,举一个例子
1 33 2 32 5 31,前四个数已定,看最后两个数相加得36即可。有6 30;7 29。。。。。。再看几组
2 32 3 31 6 30
3 31 4 30 7 29
4 30 5 29 8 28
。。。。。。。。
看出来了吧,前四个数用回笼法逼近,每两个数和等于34,后两个数在剩下的数中找两个和等于36即可,明白吗?
收起