去年觉得高不可攀的题啊...

貌似就很沙茶了QAQ

直接状压每一行是多少然后合法状态是LIS状态数极少所以随便dp一下就好了啊...

注意初值啥的得赋对才行QAQ

我菜死了

//Love and Freedom.
#include<cstdio>
#include<cmath>
#include<algorithm>
#include<cstring>
#include<map>
#define ll long long
#define inf 2002122500
using namespace std;
int a[][],b[][],n,m;
map<ll,int> f[]; map<ll,bool> vis[];
ll mm[];
int dp(ll w,int hd)
{
if(vis[hd][w]) return f[hd][w];
vis[hd][w]=; ll rem=w; int ans=(hd==?-inf:inf); int tmp=m,nt=; bool qaq=;
for(int i=;i<=n;i++)
{
nt=w%(m+); w/=(m+);
if(tmp>=nt+)
{
qaq=;
if(hd==) ans=max(ans,a[i][nt+]+dp(rem+mm[i],hd^));
else ans=min(ans,dp(rem+mm[i],hd^)-b[i][nt+]);
}
tmp=nt;
}
if(!qaq) return ; return f[hd][rem]=ans;
}
int main()
{
scanf("%d%d",&n,&m);
for(int i=;i<=n;i++) for(int j=;j<=m;j++)
scanf("%d",&a[i][j]);
for(int i=;i<=n;i++) for(int j=;j<=m;j++)
scanf("%d",&b[i][j]);
mm[]=;
for(int i=;i<=n;i++) mm[i]=mm[i-]*(m+);
printf("%d\n",dp(,));
return ;
}

最新文章

  1. 谢欣伦 - 原创软件 - 游戏专题 - 操蛋的小鸟Fucking Bird
  2. 【转】App架构设计经验谈:接口的设计
  3. Qt做动画旋转旋转图片
  4. 圆内,求离圆心最远的整数点 hiho一下第111周 Farthest Point
  5. python seq
  6. ThinkPHP 3 的输出
  7. 汉诺塔 python版
  8. git 代理设置
  9. iOS Learning
  10. 使用pillow生成分享图片
  11. Snapde电子表格支持的文件格式
  12. [jzoj]3506.【NOIP2013模拟11.4A组】善良的精灵(fairy)(深度优先生成树)
  13. PKUWC 2017 Day 2 简要题解
  14. ES6学习之变量的解构赋值
  15. Ionic下的Jpush消息推送与内容显示
  16. JS的call方法的作用解释,简单易懂
  17. 构造函数new执行与直接执行的区别
  18. iOS应用之间的跳转
  19. matlab入门笔记(六):编程基础之M文件
  20. 静态分析工具PMD使用说明

热门文章

  1. POJ 1797 Heavy Transprotation ( 最短路变形 || 最小生成树 )
  2. win7下redis开机自启动设置
  3. “The creator of this fault did not specify a Reason” Exception
  4. mysql主从架构,IO、SQL线程运行为YES,从库没有同步数据
  5. Java多线程,实现卖电影票的业务
  6. Java连接MySql数据库之JDBC
  7. Linux学习篇(三)-Linux操作系统及常用命令
  8. Failed to load resource: the server responsed with a status of 400 (Bad Request)
  9. CET-6 分频周计划生词筛选(番外篇:百词斩)
  10. 网络流强化-HDU 3338-上下界限制最大流