又一次跪了,跪在了神奇的数据范围上。

  T1上来打完暴力之后觉得是数据结构题,像三维偏序,于是开始往各种数据结构上想,主席树,线段树+calc,平衡树,树套树,CDQ……最终在经过一番思考之后选择去打CDQ,打完之后自己拍了一下,发现我的想法是错的,考虑了一下转场。T2好像又是原题,打完暴力之后开始回忆,只记得答案和期望无关,XYZ讲过,卡区间去做,然而细节记不住了。T3一开始还以为是子串,觉得还挺容易,结果一看是子序列,打完暴力就跪了。纠结了一下去打T1,又用了半个小时打了一整套线段树套SPLAY,打完调完发现也行不通,痛苦ing……最后憋住劲查出来了vector没调库……

  下午发现分少的可怜,T1暴力65分,我虽然打了,但是由于我当时不知道该不该放那个CDQ的错解骗分,只将暴力限定在了2000以内,然而题目描述里小于2000的只有30分啊,虽然常数小但是没这么坑人的啊!

  讲课仍然不错,听的还是挺明白的,除了四边形不等式优化。

  晚上接着打插头DP,然而感到了收杀头DP支配的恐惧……一晚上打一道插头DP都没调完。话说3进制到底怎么玩??

 #include<iostream>
#include<cmath>
#include<vector>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<algorithm>
#define N 9
#define M 105
using namespace std;
int n,m;
int ma[M][M],b[M];
int f[M][N][];
int zt[][],xp[M];
int main()
{
scanf("%d%d",&m,&n);
for(int i=;i<=n;i++)
{
for(int j=;j<=m;j++)
{
scanf("%d",&ma[i][j]);
}
}
xp[]=;
for(int i=;i<=m+;i++)
{
xp[i]=xp[i-]*;
}
for(int i=;i<xp[m+];i++) b[i]=i%;
int ans=-0x7fffffff;
for(int i=;i<=n;i++)
{
for(int j=;j<=m;j++)
{
int x=xp[j-],y=xp[j];
for(int k=;k<xp[m+];k++)
{
int p=b[k/x],q=b[k/y],t=k-x*p-y*q;
if(!p&&!q)
{
f[i][j][k]=max(f[i][j-][k],f[i][j][k]);
f[i][j][k+x+(y<<)]=max(f[i][j][k+x+(y<<)],f[i][j-][k]+ma[i][j]);
}
else if((!p&&q==)||(!q&&p==))
{
f[i][j][t+x]=max(f[i][j][t+x],f[i][j-][k]+ma[i][j]);
f[i][j][t+y]=max(f[i][j][t+y],f[i][j-][k]+ma[i][j]);
}
else if((!p&&q==)||(!q&&p==))
{
f[i][j][t+(x<<)]=max(f[i][j][t+(x<<)],f[i][j-][k]+ma[i][j]);
f[i][j][t+(y<<)]=max(f[i][j][t+(y<<)],f[i][j-][k]+ma[i][j]);
}
else if(p==&&q==&&!t&&ans<f[i][j-][k]+ma[i][j]) ans=f[i][j-][k]+ma[i][j],cout<<i<<' '<<j<<' '<<ans<<endl;
else if(p==&&q==) f[i][j][t]=max(f[i][j][t],f[i][j-][k]+ma[i][j]);
else if(p==&&q==)
{
int u,tmp;
for(tmp=,u=j+;u<=m&&tmp>=;tmp+=(b[t/xp[u]]==)-(b[t/xp[u]]==),u++);
u--;
f[i][j][t-xp[u]]=max(f[i][j][t-xp[u]],f[i][j-][k]+ma[i][j]);
}
else if(p==&&q==)
{
int u,tmp;
for(tmp=,u=j-;u>=&&tmp>=;tmp+=(b[t/xp[u]]==)-(b[t/xp[u]]==),u--);
u++;
f[i][j][t+xp[u]]=max(f[i][j][t+xp[u]],f[i][j-][k]+ma[i][j]);
}
}
}
for(int j=;j<xp[m];j++) if(b[j]==)f[i+][][j/]=f[i][m][j];
}
printf("%d\n",ans);
return ;
}

存一个代码

CDQZ集训DAY10 日记的更多相关文章

  1. CDQZ集训DAY3 日记

    早上起来之后依然开始考试.然而由于校方觉得都挨在一起没有考试氛围,分了两个机房,一开始还没人去,听说另一个机房配置好了之后一堆人开始往外冲,由于我天真的数了一下我是不是要走的,晚了一步,于是乎被教练员 ...

  2. CDQZ集训DAY9 日记

    彻彻底底的爆炸了…… 考试上来第一题看完30分暴力后就不知道怎么打了,然后看第二题,一开始脑残以为是网络流,后来发现是树状结构后觉得是那个经典的n^2的树上背包DP,然而脑子又一次犯笨,竟然,竟然去枚 ...

  3. CDQZ集训DAY8 日记

    又一次翻车…… 先提一句昨晚的事.昨天晚上身后一帮成都七中的人用十分戏谑的语气交出了达哥的名字,看着NOI2017的获奖名单,如果他们真的是在嘲笑的话,真的挺想上去干他们一顿的…… 上午考试第一题一脸 ...

  4. CDQZ集训DAY7 日记

    并没有考试然而心情比考试还糟糕…… 上午讲的基本就听不懂,讲课人迷之停顿.根本让人跟不上趟,声音好奇怪的说……好不容易讲到反演,Hzoi集体上线,等待装逼时刻的到来.然而,讲课人再次迷之停顿,讲一个p ...

  5. CDQZ集训DAY6 日记

    又炸了. 早上起来其他竞赛生也走了,食堂做饭做的挺潦草,但为什么四川烧麦的馅是米啊??!! 起来看题总觉得都似曾相识.第一题打完40分暴力后想拿莫队搞到70分,但发现能想到的莫队维护都是nsqrt(n ...

  6. CDQZ集训DAY5 日记

    又一个爆炸的一天…… 早上起来发现貌似是周末,七中放假(别人家的学校(一周一放,一放两天)……)然而感觉状态不是很好,感觉药丸. 题目一上来就装弱,有诈.第一题上来先打暴力,T2不知道怎么打.T3暴力 ...

  7. CDQZ集训DAY4 日记

    早上起来之后发现座位被zzh占了,得知座位改为先来后到,什么鬼…… 于是去了另一个有耳机的机房,然而并没有什么卵用. T1上来感觉很有意思,先切50分再说.T2好像是原题的说,切了原题30分后大胆猜测 ...

  8. CDQZ集训DAY2 日记

    依然很爆炸. T1上来有50分暴力分,打完后注意到了后50分的随机数据,开始想怎么去对付他.然后就开始思考随机数据意味着什么.想了想,想打一个扫描线或者分治.决策了一下还是打了一个扫描线+链表.然而只 ...

  9. CDQZ集训DAY1 日记

    爆炸的一天…… 上午考试,然而一道题都没想出正解. T1刚看到题就想到数位DP,然后有感觉是反演,然后读完题之后又觉得是数位DP,发现最后只关注最后9位打了一个类似数位DP的爆搜.期望20分,实际10 ...

随机推荐

  1. 微信小程序把玩(十三)progress组件

    原文:微信小程序把玩(十三)progress组件 进度条描述的是一种加载的状态,比如软件升级下载进度, 视频,图片下载进度- 主要属性: wxml <progress percent=" ...

  2. AlwaysOn数据同步暂停及回退技术

    随着AlwaysOn技术的流行,关于AlwayOn的问题也越来越多,某企业搭建有三副本的AlwaysOn一套,现想修改主节点上某张表的某个数据,看看会出现什么后果,如果结果正常,就同步到其他节点上:如 ...

  3. UWP中弹出框屏幕适配问题

    上次在UWP中的消息提示框(二)中谈到弹出框在虚拟导航栏的手机上被遮挡问题,今天接就着扯. 上次给用户控件指定的宽高都是Window.Current.Bounds的宽高,而这个获取到的是包含应用程序窗 ...

  4. git + gerrit push 代码问题

    关于refs/for 和 refs/heads: 1.     这个不是git的规则,而是gerrit的规则, 2.     Branches, remote-tracking branches, a ...

  5. 使用dumpbin命令查看dll导出函数及重定向输出到文件(VS自带)

    以前查看dll导出函数,一般使用Viewdll等第三方工具.但由于Viewdll采用dephi编写,因此仅能查看32位的dll.其实微软已经帮我们提供一个查看dll导出函数的命令,嵌在VS开发环境中, ...

  6. 数据备份服务商Rubrik获4000万美元B轮融资

    搜狐科技 文/丽丽卡 5月27日,数据备份服务商Rubrik获Greylock Partners领投的4000万美元B轮融资,Lightspeed Venture Partners及其现有投资者跟投, ...

  7. django自带的cache

    cache语法 from django.core.cache import cache #存入内存 cache.set("aaa",123) #从内存中获取 cache.get(& ...

  8. 极简代理IP爬取代码——Python爬取免费代理IP

    这两日又捡起了许久不碰的爬虫知识,原因是亲友在朋友圈拉人投票,点进去一看发现不用登陆或注册,觉得并不复杂,就一时技痒搞一搞,看看自己的知识都忘到啥样了. 分析一看,其实就是个post请求,需要的信息都 ...

  9. 文件识别浅谈(含office文件区分)

    前言 本文主要根据后台接口识别Office文件类型这一话题做一些分享,主要方向还是放在不能获取到文件名情况下的Office文件识别. 可获取到文件名 如果后端接口可以获取到完成的文件名称,则整个过程会 ...

  10. java开发工具必备神器——Notepad++和jd-gui下载安装使用

    Notepad++是 Windows操作系统下的一套文本编辑器,有完整的中文化接口及支持多国语言编写的功能(UTF8技术).除了可以用来制作一般的纯文字说明文件,也十分适合编写计算机程序代码.Note ...