传送门

分析

我们可以建一个k层图,把dp转移的三维对应到每个点上,每个第k层点连向0层点

我们让第0层点为实点其余为虚点,只要碰到虚点就dfs到他连得所有实点再将实点入队即可

代码

#include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
#include<algorithm>
#include<cctype>
#include<cmath>
#include<cstdlib>
#include<queue>
#include<ctime>
#include<vector>
#include<set>
#include<map>
#include<stack>
using namespace std;
priority_queue<pair<int,int> >q;
bool vis[][][];
int d[],v[],a[],b[],n,m,K,res;
inline void go(int x,int y,int z){
if(vis[x][y][z])return;
vis[x][y][z]=;
if(x==m){
if(y==K&&z<n&&res+b[z]<d[z]){
d[z]=res+b[z];
q.push(make_pair(-d[z],z));
}
}else {
go(x+,y,z);
if(y<K)go(x+,y+,z^(<<x));
}
}
int main(){
int i,j,k;
scanf("%d%d",&n,&K);
while((<<m)<n)m++;
memset(d,0x3,sizeof(d));
for(i=;i<n;i++){
scanf("%d",&v[i]);
if(v[i]>=)d[i]=v[i],q.push(make_pair(-d[i],i));
}
for(i=;i<n;i++)scanf("%d",&a[i]);
for(i=;i<n;i++)scanf("%d",&b[i]);
while(!q.empty()){
int x=q.top().second,y=-q.top().first;
cout<<y<<endl;
q.pop();
if(x<n){
if(y>d[x])continue;
q.push(make_pair(-y-a[x],x+n));
}else {
res=y;
go(,,x-n);
}
}
int Ans=;
for(i=;i<n;i++)Ans^=d[i];
cout<<Ans;
return ;
}

最新文章

  1. ZeroMQ接口函数之 :zmq_connect - 由一个socket创建一个对外连接
  2. [转]编译安装libevent,memcache,以及php的memcached扩展
  3. (十一) 一起学 Unix 环境高级编程 (APUE) 之 高级 IO
  4. HTML5 ——本地存储
  5. py替换掉换行符
  6. HDU 2897 (博弈 找规律) 邂逅明下
  7. Codeforces Bubble Cup 8 - Finals [Online Mirror] B. Bribes lca
  8. Gradle的简介与安装
  9. ie启动不了的解决办法,win7,win8都可以
  10. 使用原生 python 造轮子搭建博客
  11. Django 缓存
  12. [angularjs] angularjs系列笔记(二)指令
  13. 洛谷P2678跳石头题解
  14. ubuntu upgrade
  15. js获取时间戳(new date()参数获取)
  16. POJ3090(SummerTrainingDay04-M 欧拉函数)
  17. geth 命令
  18. Windows7安装CodeTyphon
  19. 比较JSF、Spring MVC、Stripes、Struts 2、Tapestry、Wicket
  20. 一个JS引发的血案

热门文章

  1. Exce信息提取
  2. SQL语句 合并列值 将一列的多个值合并成一行
  3. PAT 甲级1003 Emergency (25)(25 分)(Dikjstra,也可以自己到自己!)
  4. Python模块包(pycharm右键创建文件夹和python package的区别)中__init__.py文件的作用
  5. .NET单点登录实现方法----两种
  6. Hadoop MapReduce 初步学习总结
  7. 使用exe4j把java程序生成可执行的.exe文件
  8. PyQt 5控件
  9. iframe有哪些缺点?
  10. WebService与WCF