
二进制枚举子集
1
hesorchen
这个作者很懒,什么都没留下…
展开
-
洛谷P2036
题目链接:洛谷P2036一看数据范围,直接想到二进制枚举子集int main(){ // fre; int n; cin >> n; int ans = INF; int a[12], b[12]; for (int i = 1; i <= n; i++) cin >> a[i] >> b[i]; for (int i = 1; i < (1 << n); i++)原创 2020-05-15 15:26:23 · 5385 阅读 · 0 评论 -
二进制枚举
题目:输入一个n,m,让你在0~ 9中找不同的n个数,相加等于m,问你有多少种可能。例如:输入2 6,可以选择0+6,1+5,2+4,所以答案是3。总共就十个数字。也就是1024种情况,暴力二进制枚举即可~int main(){ int n, m; while (cin >> n >> m && n && m) ...原创 2020-03-14 20:49:39 · 5181 阅读 · 2 评论 -
二进制枚举子集
定义子集是一个数学概念:如果集合A的任意一个元素都是集合B的元素,那么集合A称为集合B的子集。A集合有n个元素,那么A的子集个数为2n。我们先来看看3个物品的23取法分别是哪8种用1表示取该物品,0表示不取取法\物品物品1物品2物品3取法1000取法2001取法3010取法4011取法5100...原创 2020-02-03 16:01:11 · 6961 阅读 · 2 评论