杭电多校第一场第三题 Backpack(异或dp+bitset)
爱丽丝有n项目,每个项目都有一个卷v我和值w我.
是否可以从n个项目中选择多个项目,以使背包完全装满(即体积的总和等于背包容量)?如果是这样,当背包装满时,背包中物品值的最大异或总和是多少?
每个测试用例的第一行包含 2 个整数n,m(1≤n,m<2^10)— 物品数量,背包容量。
下一个n行,每行包含 2 个整数v我,w我(1≤v我,w我<2^10)— 项目的数量和价值。
输出
#include <iostream>
#include <algorithm>
#include <cstring>
#include <bitset>
using namespace std;
const int N=1050;
int n,m;
bitset<N> f[N],g[N];void init(){for(int i=0;i<=1024;i++){f[i].reset();}f[0][0]=1;
}int main(){int t;cin>>t;while(t--){cin>>n>>m;init();for(int i=0;i<n;i++){int v,m1;cin>>v>>m1;for(int j=0;j<1024;j++){g[j]=f[j]; g[j]<<=v;//此时g为初状态}for(int j=0;j<1024;j++){f[j]|=g[j^m1];//此时f为末状态也就是(j^m1)^m1==j 注:“()”内为初状态 }}int ans=-1;for(int i=0;i<1024;i++){if(f[i][m]) ans=i;}cout<<ans<<endl;}return 0;
}
杭电多校第一场第三题 Backpack(异或dp+bitset)相关推荐
- 2019年杭电多校第一场 1001题blank(DP)HDU6578
2019年杭电多校第一场 1001题blank(DP)HDU6578 解决思路,开一个DP数组来存储0 1 2 3四个字符最后出现的位置,并且在DP中已经==排好序==. DP开四维,DP[i][j] ...
- 2022“杭电杯”中国大学生算法设计超级联赛 (1) 杭电多校第一场 2 3 4 5 8 12
题目 1002 Dragon slayer 标程 1003 Backpack AC代码 1004 Ball AC代码 1008 Path AC代码 1009 Laser AC代码 1012 Alice ...
- 2022杭电多校第一场
A String 题意:求s串1-i(1 <i <n)子串的贡献,贡献为公共前后缀相交并且相交部分长度为k的倍数的数量 题解做法是用exkmp求出s串与所有后缀的LCP后,设LCP为x,那 ...
- 2019杭电多校第一场 Operation HDU - 6579
题意:给出一个序列,两种操作,求区间[l,r]的区间最大异或和,和在末尾添加一个数 思路:强制在线,保存每个线性基的数值,接下去直接去搜第r个线性基,但要保持时间比l要大,新增了一个pos数组代表一个 ...
- HDU-6578 Blank(DP)2019暑假杭电多校第一场
题意:一行有n个空格编号1~n; 每一个空格中填入0,1,2,3中的一个数字.且满足m个限制l,r,x:满足在区间[l,r]正好有x种不同的数字. 有多少种方法可以填充空格以满足所有条件? 思路:dp ...
- 2019杭电多校第一场 HDU 6599
题解 枚举所有的回文串 注意,本质不同的回文串最多只有∣S∣|S|∣S∣个 在这些回文串中,有一些是满足要求的,我们对这些串打上标记 首先跑一个ManacherManacherManacher,然后枚 ...
- 2022 杭电多校 第一场
文章目录 1011 Random 1012 Alice and Bob 1003 Backpack 1002 Dragon slayer 1009 Laser 1011 Random 签到 求一下期望 ...
- 2022“杭电杯”中国大学生算法设计超级联赛 (2) 杭电多校第二场
题目 1001 Static Query on Tree AC代码 1002 C++ to Python AC代码 1003 Copy AC代码 1005 Slayers Come AC代码 1007 ...
- 2018 Multi-University Training Contest 9 杭电多校第九场 (有坑待补)
咕咕咕了太久 多校博客直接从第三场跳到了第九场orz 见谅见谅(会补的!) 明明最后看下来是dp场 但是硬生生被我们做成了组合数专场-- 听说jls把我们用组合数做的题都用dp来了遍 这里只放了用组 ...
最新文章
- Pytorch转TensorRT范例代码
- docker安装influxdb、grafana及展示数据到grafana
- 专家系统出现的计算机应用阶段,接本第一二章历年考题08-12
- 如何为你的博客园添加到百度统计
- HTML5 API详解(5):Page Visibility API帮您省流量,提高体验
- 编写一个函数把华氏温度转换为摄氏温度
- 猴子都能懂的数据库范式详解
- 数据挖掘概念与技术(原书第三版)范明 孟小峰译-----第二章课后习题答案
- 数电笔记之无关项化简逻辑函数
- android 蓝牙与单片机通信原理图,单片机结合蓝牙模块串口通信
- php 万能密码,网络安全系列之十 万能密码登录网站后台
- apdu 移动sim_在Android中将APDU命令发送到USIM / SIM卡
- 怎么用电脑操控自己的手机 怎样用电脑控制手机?
- 迈普交换机_配置手册_IS420
- 操作系统:动态分区存储(首次适应算法、最佳适应算法)
- 广成子:值得收藏-史上最全Linux ps命令详解
- 文字生成视频,清华出品
- CodeForces 711C Coloring Trees (三维DP)
- 论文MICO for MRI bias field estimation and tissue segmentation品讲
- IDL转换BSQ格式至BIL
热门文章
- 【DIY小记】解决CSGO打开游戏即闪退的问题
- python中三目运算符、推导式 ## 17
- 免费又好用的参考文献管理软件zotero该怎么使用?可以同时支持中文和英文吗?...
- JS逆向字体反爬,某供应商平台反爬实践
- 【常用电子元件】光敏二极管的简介与应用(实例:STM32监测光强)
- sim900a 裸AT通过GPRS网络发送接收数据
- 基于单片机的智能健康监护仪的设计(心电、心音、体温、脉搏、血压采集)
- Vue 3 中 v-if 和 v-show 指令实现的原理(源码分析)
- 如何判断app在前台还是后台
- 在window系统安装虚拟linux系统以及搭建web环境教程