c++求5个互不相同的正整数:1》他们的和为23 。2》从他们中挑选出若干个数可以组成1-23中的任何一个数

来源:百度知道 编辑:UC知道 时间:2024/06/07 16:52:26

#include <iostream>
using namespace std;

int main ()
{
int a[5];
int sum=0;
bool exist[24];

for (a[0]=1;a[0]<=23/5;a[0]++)
for (a[1]=a[0]+1;a[1]<=(23-a[0])/4;a[1]++)
for (a[2]=a[1]+1;a[2]<=(23-a[0]-a[1])/3;a[2]++)
for (a[3]=a[2]+1;a[3]<=(23-a[0]-a[1]-a[2])/2;a[3]++)
{
a[4]=23-a[0]-a[1]-a[2]-a[3];
if (a[3]>=a[4])
{
break;
}

for (int j=0;j<=23;j++)
{
exist[j]=false;
}

for (int i=1;i<=(1<<5);i++)
{
sum=0;

int k=i;
for (int j=0;j<5;j++)
{
sum=sum+(a[j]*(k%2));
k=k/2;
}
exist[sum]=true;
}

int k=0;
for (int j=1;j<=23;j++)
{
if (exist[j]) k++;
}

if (k==23)
{
cout<<a[0]<<' '<<a[1]<<' '<<a[2]<

设a.b.c是互不相等的正整数 a、b、c、d是四个互不相同自然数,这四个自然数相乘的积是1988,求a+b+c+d的最大值和最小值 用C语言编写有1,2,3,4四个数,能组成多少个互不相同且无重复数字的三位数,都是多少 有1234四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?要用C语言做啊,谢谢各位了 有1.2.3.4.4个数,能组成多少个互不相同且无重复数字的3位数?都是多少?用C语言编程 求2个正整数之间的奇数和还有偶数和(C语言代码) C语言求n个正整数的最大公约数和最小公约数 已知3个互不相同的自然数之和是55,其中每两个数之和分别是完全平方数,求这三个自然数 你能漆成多少互不相同的立方体? 随机生成20个100以内的两位正整数,统计其中有多少个不相同的数?(求VB编程答案!)