2017.10.24 学校食堂Dining 失败总结
这题目描述不清啊、省选应该有人解释吧,
对着理解错的题调了一上午。。。
注意 如果一个人b==5 那这个人后面6个以后的都不能在这个人以前选
这个题就是怎么处理7的问题,状压枚举,同时满足条件的选人方案是一个单调的区间
码:
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int T,i,j,k,l,er[30],n,b[1005];
int ans,a[1005],f[1005][290][18];
int main()
{
scanf("%d",&T);
er[0]=1;
for(i=1;i<=16;i++)er[i]=er[i-1]*2;
while(T--)
{ans=100000000000009;memset(f,0x7f,sizeof(f));
scanf("%d",&n);
for(i=1;i<=n;i++) scanf("%d%d",&a[i],&b[i]),b[i]=min(b[i],n-i);
f[1][0][7]=0;for(i=1;i<=n;i++)//扫位置 {for(j=0;j<er[8];j++)//不接受上一个给过了的状态//扫后8个人的状态 { for(k=-8;k<=7;k++)//上一个吃的人2^k {if(f[i][j][k+8]>1000000000)continue; int r=b[i];if(j&1){// cout<<i<<" "<<(j)<<" "<<k<<" "<<f[i][j][k+8]<<endl;f[i+1][j>>1][k+8-1]=min(f[i][j][k+8],f[i+1][j>>1][k+8-1]); }elsefor(l=0;l<=7;l++) //这一次吃的人{ if(j&er[l])continue;//已经喂过 if(l>r)break;r=min(l+b[i+l],r);f[i][j|er[l]][l+8]=min(f[i][j|er[l]][l+8],f[i][j][k+8]+( (i+k==0)?0:(a[i+k]^a[i+l]))); } } }}for(i=-8;i<=-1;i++){ans=min(ans,f[n+1][0][i+8]); }printf("%d\n",ans);
}
}
2017.10.24 学校食堂Dining 失败总结相关推荐
- 【BZOJ1226/SDOI2009】学校食堂Dining
1226: [SDOI2009]学校食堂Dining Time Limit: 10 Sec Memory Limit: 259 MB ...
- [bzoj1226]学校食堂Dining
[bzoj1226]学校食堂Dining 状压dp,注意记上一个人的时候要记到负数(当前这个人之前) 代码 #include<bits/stdc++.h> using namespace ...
- [SDOI2009]学校食堂Dining
Description 小F 的学校在城市的一个偏僻角落,所有学生都只好在学校吃饭.学校有一个食堂,虽然简陋,但食堂大厨总能做出让同学们满意的菜肴.当然,不同的人口味也不一定相同,但每个人的口味都可以 ...
- [SDOI2009]学校食堂Dining(洛谷2157)
标签:状压DP,bitset位运算 题目描述 小F 的学校在城市的一个偏僻角落,所有学生都只好在学校吃饭.学校有一个食堂,虽然简陋,但食堂大厨总能做出让同学们满意的菜肴.当然,不同的人口味也不一定相同 ...
- [SDOI2009]学校食堂Dining 洛谷p2157
题目描述 小F 的学校在城市的一个偏僻角落,所有学生都只好在学校吃饭.学校有一个食堂,虽然简陋,但食堂大厨总能做出让同学们满意的菜肴.当然,不同的人口味也不一定相同,但每个人的口味都可以用一个非负整数 ...
- BZOJ 1226 [SDOI2009] 学校食堂Dining
Description 小F 的学校在城市的一个偏僻角落,所有学生都只好在学校吃饭.学校有一个食堂,虽然简陋,但食堂大厨总能做出让同学们满意的菜肴.当然,不同的人口味也不一定相同,但每个人的口味都可以 ...
- 2017.10.24队内互测——压轴出场的互测终曲|(*_-)
出题人: Sherlock, Frank, WWQ, MurasameKatana 终于到了我们组出题啦. 题面都是我自己写的2333 Problem 1 :令咒 题目来源:http://codevs ...
- BZOJ 1226: [SDOI2009]学校食堂Dining [DP 状压]
题意: $n$个人排队打饭,第$i$个人口味$a_i$,能容忍最多身后第$b_i$个人先打饭. 先后两人$i,j$做饭时间为$a_i & a_j - a_i | a_j$ 求最少时间 一开始想 ...
- 队内胡策 2017.10.24 求逆序对+表达式计算+贪心+Bfs+最短路、exgcd
*PS:为什么我t5死活都调不出来呢(눈‸눈) T1:原创,参考noip火柴排队. T2: codevs 2178 表达式运算Cuties (我自己找的) T3:Codeforce867E(865D) ...
最新文章
- 聊聊 HashMap 和 TreeMap 的内部结构
- java基础之【堆、栈、方法区】结构图
- SD-WAN — 核心能力
- 南昌推进“互联网+”智慧城市建设
- python协程池操作mysql_python_协程方式操作数据库
- python prt_Python中的self
- 如何查看PublicKeyToken
- C++static类静态成员函数及变量解析
- Spring好处—总结
- 分享一个免杀的netcat.exe
- PHP经验——获得PHP版本信息及版本比较
- HTML5期末大作业:个人网站设计——简单响应式个人博客HTML模板(8页面) HTML+CSS+JavaScript...
- 《炬丰科技-半导体工艺》三维硅MEMS结构微加工
- UE4莫名其妙崩溃的解决办法
- 停车场车牌识别收费系统厂家
- java 调excel 的宏_Microsoft Excel宏来运行Java程序
- imu oracle,IMU技术
- 老男孩脱产班Linux运维51期
- 使用Python对大脑成像数据进行可视化分析
- matlab代码规范(自用)
热门文章
- 使用Java模拟线性表顺序存储结构
- Android笔记 fragment入门 动态加载fragment demo+ 判断横竖屏
- 2048游戏c语言实验报告,2048游戏语言实验报告.doc
- python以追加方式打开文件 线程安全吗_多线程追加文件,不加锁,会出现什么情况 ?...
- 【IDEA工具设置】解决控制台中文输出乱码问题
- A Scala Tutorial for Java programmers之(一)Scala入门:Scala例子,以及如何与Java交互
- activiti5.13 框架 数据库设计说明书
- Java获取数据类型
- linux增加 inode空间,linux 增加inode 的方法
- python读取word文档结构图_python根据文章标题内容自动生成摘分享的实例