2019-1-11

unique的使用:

1. unique是把相邻的重复元素放到最后面。所以在对无序数列使用之前,需要用sort先排序。

2.unique的返回值是不重复区的的最后一个元素加一的地址。

sort(V.begin(), V.end() );

vector<int>::iterator end_unique = unique(V.begin(), V.end() );

V.erase(end_unique, V.end() );

组合:

给n个数,计算能被他们组合的所有数。

找出一定范围内(0~MAX内)的所有能用它们组合的数。

两个循环,volume数组是0或者1。

exm:3 6 10

顺序:

3 6 9 12 ……

6 9 12 15  ……

10 13 16 20 23 26 30 ……

int volume[MAX];

volume[0] = 1;

for(int i = 0;  i < n; i++)	
	for(int j = volume[i]; j <= MAX; j++)
	{
		if(volume[j - volume[i]] == 1)
			volume[j] = 1;
	}

猜你喜欢

转载自www.cnblogs.com/stul/p/10258211.html
今日推荐