bitset
Self-Discipline
在校大学生
展开
-
bitset的用法与数的二进制存储
正数和0用原码存储,最高一位为符号位,负数为1,正数和0为0,负数在计算机用补码表示,就为原码取反(符号位除外)再加1,或者也可以先+1,再取反。c++的stl中的bitset很方便用例解决有关二进制的问题,它是一个二进制数组。代码如下: #include <stdio.h>#include <limits.h>void dec_to_bin(int n){...原创 2018-04-03 11:06:15 · 1527 阅读 · 0 评论 -
牛客练习赛22 - C 简单瞎搞题
题目:点击打开链接题意:一共有 n个数,第 i 个数是 xi xi 可以取 [li , ri] 中任意的一个值。 设 ,求 S 种类数。 分析:首先想到用背包做,但是时间复杂度太高,后面参考了题解发现用bieset+位运算+背包的思想。题目给出的数据范围不大,最多不超过一百万种情况,可以用二进制中的1代表能凑成的数的值,开n个一百万的bitset,内存大概十多兆,不会超内...原创 2018-07-15 09:37:23 · 532 阅读 · 0 评论 -
hdu 5890
题意: 现在给你n个数,每次查询问从点集中删去 x,y,z 三个数,你要从其他的剩下的数中能否找出10个数使得十个数相加为87?思路: 背包来做,由于n 比较小,所以我可以预先处理出所有的情况,然后用bitset 优化。代码:#include<bits/stdc++.h>using namespace std;bitset<90>dp[11];int n...原创 2019-05-16 21:27:33 · 232 阅读 · 0 评论