⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 子集和问题.cpp

📁 子集和问题.rar:这是我学算法设计时的总结,包括定长和不定长做法(也就是回朔法,剪枝限界),当然也包括穷举法.
💻 CPP
字号:
#include "stdio.h"

void main()
{
	int P[9]={10,20,24,25,26,30,34,35,40};
	int n = 512;
	int Test = 90;
	int i,j;
	int Sum;

	for(i = 1; i < n; i++){
		Sum = 0;
		for(j = 0; j < 9; j++){
			Sum = Sum + P[j] * ((i >> j) & 1);
		}
		if(Sum == Test){
			for(j = 0; j < 9; j++){
				if((i >> j) & 1 == 1)
					printf(" %d ",P[j]);
			}
			printf(" \n ");
		}
	}
}
//p[j]-------j==1......
/*
i=1                                                    p0]
i=2                                                    p[1]
=3                                                    0+1
4                                                     p[2]
5                                                     0+ 2
  i=8    (i>>j)&1   8--> 1000  就是计算  sum=3+5;也就是p[2]+p[4]
i=7                 7-->111  就是          sum =2+5      1+   4
i==100;               110010                   =64+32+4    3+ 31 +63

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -