[Bzoj5359][Lydsy1805月赛]寻宝游戏(dp)
5359: [Lydsy1805月赛]寻宝游戏
Time Limit: 2 Sec Memory Limit: 512 MB
Submit: 71 Solved: 19
[Submit][Status][Discuss]
Description
Input
Output
Sample Input
Sample Output
HINT
Source
AC代码:
# include <iostream>
# include <cstdio>
# include <cstring>
# include <algorithm>
using namespace std;
int f[][][][],a[],b[],s[][],g[][][],h[][][],n,m,K,dt;
bool cmp(int x,int y){return x > y;}
void init()
{
memset(g,,sizeof g);
memset(h,,sizeof h);
for(int i = ;i <= n;i++)
{
dt = ;
for(int j = m;j >= ;j--)
{
sort(a + ,a + dt + ,cmp);
for(int k = ;k <= dt;k++)b[k] = b[k - ] + a[k],g[i][j][k] = b[k];
a[++dt] = s[i][j];
}
}
for(int j = ;j <= m;j++)
{
dt = ;
for(int i = n;i >= ;i--)
{
sort(a + ,a + dt + ,cmp);
for(int k = ;k <= dt;k++)b[k] = b[k - ] + a[k],h[i][j][k] = b[k];
a[++dt] = s[i][j];
}
}
memset(f,0x80,sizeof f);
f[][][][] = s[][];
f[][][][] = ;
}
int main()
{
int Case;scanf("%d",&Case);
while(Case--)
{
scanf("%d %d %d",&n,&m,&K);
for(int i = ;i <= n;i++)
for(int j = ;j <= m;j++)
scanf("%d",&s[i][j]);
init();
for(int i = ;i <= n;i++)
for(int j = ;j <= m;j++)
for(int k = ;k <= K;k++)
for(int l = ;l <= K;l++)
{
for(int t = ;t <= min(K - l,m - j);t++)
f[i + ][j][k][l + t] = max(f[i + ][j][k][l + t],f[i][j][k][l] + s[i + ][j] + g[i][j][t]),
f[i + ][j][k + ][l + t] = max(f[i + ][j][k + ][l + t],f[i][j][k][l] + g[i][j][t]);
for(int t = ;t <= min(K - l,n - i);t++)
f[i][j + ][k][l + t] = max(f[i][j + ][k][l + t],f[i][j][k][l] + s[i][j + ] + h[i][j][t]),
f[i][j + ][k + ][l + t] = max(f[i][j + ][k + ][l + t],f[i][j][k][l] + h[i][j][t]);
}
int ans = ;
for(int i = ;i <= K;i++)ans = max(ans,f[n][m][i][i]);
printf("%d\n",ans);
}
}
[Bzoj5359][Lydsy1805月赛]寻宝游戏(dp)的更多相关文章
- BZOJ_5359_[Lydsy1805月赛]寻宝游戏_DP
BZOJ5359_[Lydsy1805月赛]寻宝游戏_DP Description begin.lydsy.com/JudgeOnline/upload/201805.pdf 我们需要找到一条权值最大 ...
- BZOJ4881: [Lydsy1705月赛]线段游戏(二分图)
4881: [Lydsy1705月赛]线段游戏 Time Limit: 3 Sec Memory Limit: 256 MBSubmit: 359 Solved: 205[Submit][Stat ...
- [BZOJ3991][SDOI2015]寻宝游戏
[BZOJ3991][SDOI2015]寻宝游戏 试题描述 小B最近正在玩一个寻宝游戏,这个游戏的地图中有N个村庄和N-1条道路,并且任何两个村庄之间有且仅有一条路径可达.游戏开始时,玩家可以任意选择 ...
- 【BZOJ】【3991】【SDOI2015】寻宝游戏
dfs序 我哭啊……这题在考试的时候(我不是山东的,CH大法吼)没想出来……只写了50分的暴力QAQ 而且苦逼的写的比正解还长……我骗点分容易吗QAQ 骗分做法: 1.$n,m\leq 1000$: ...
- 树形结构的维护:BZOJ 3991: [SDOI2015]寻宝游戏
Description 小B最近正在玩一个寻宝游戏,这个游戏的地图中有N个村庄和N-1条道路,并且任何两个村庄之间有且仅有一条路径可达.游戏开始时,玩家可以任意选择一个村庄,瞬间转移到这个村庄,然后可 ...
- bzoj 3991: [SDOI2015]寻宝游戏
Description 小B最近正在玩一个寻宝游戏,这个游戏的地图中有N个村庄和N-1条道路,并且任何两个村庄之间有且仅有一条路径可达.游戏开始时,玩家可以任意选择一个村庄,瞬间转移到这个村庄,然后可 ...
- 【BZOJ3991】【SDOI2015】寻宝游戏
Description 小B最近正在玩一个寻宝游戏,这个游戏的地图中有N个村庄和N-1条道路,并且任何两个村庄之间有且仅有一条路径可达.游戏开始时,玩家可以任意选择一个村庄,瞬间转移到这个村庄,然 ...
- Loj #2494. 「AHOI / HNOI2018」寻宝游戏
Loj #2494. 「AHOI / HNOI2018」寻宝游戏 题目描述 某大学每年都会有一次 Mystery Hunt 的活动,玩家需要根据设置的线索解谜,找到宝藏的位置,前一年获胜的队伍可以获得 ...
- 【BZOJ5285】[HNOI2018]寻宝游戏(神仙题)
[BZOJ5285][HNOI2018]寻宝游戏(神仙题) 题面 BZOJ 洛谷 题解 既然是二进制按位的运算,显然按位考虑. 发现这样一个关系,如果是\(or\)的话,只要\(or\ 1\),那么无 ...
随机推荐
- Python中的可迭代对象,迭代器与生成器
先来看一张概览图,关于容器(container).可迭代对象(Iterable).迭代器(iterator).生成器(generator). 一.容器(container) 容器就是一个用来存储多个元 ...
- Python入门学习笔记2:刷题
1) LeetCode 强的面试题和算法题,要求也比较高,很多国内外的码农在上面刷题.难度从easy到hard都有,而且覆盖面极广,需要你的综合实力去答题. 最简单的题比如字符串的处理有的时候也要用到 ...
- pandas-Notes2
#coding = utf-8 import pandas as pd import numpy as np import matplotlib as plt dates = pd.date_rang ...
- <原创>在PE最后一节中插入补丁程序(附代码)
完整文件 http://files.cnblogs.com/Files/Gotogoo/在PE最后一节中插入补丁程序.zip 在PE文件最后一节中插入补丁程序,是最简单也是最有效的一种,因为PE最后 ...
- Python虚拟机函数机制之无参调用(一)
PyFunctionObject对象 在Python中,任何一个东西都是对象,函数也不例外.函数这种抽象机制,是通过一个Python对象——PyFunctionObject来实现的 typedef s ...
- 详解Python中的相对导入和绝对导入
Python 相对导入与绝对导入,这两个概念是相对于包内导入而言的.包内导入即是包内的模块导入包内部的模块. Python import 的搜索路径 在当前目录下搜索该模块 在环境变量 PYTHONP ...
- jnative 使用
下载地址: JNative_1.4RC2_src.zip : http://jaist.dl.sourceforge.net/sourceforge/jnative/JNative_1.4RC2_sr ...
- luogu2698 [USACO12MAR]花盆Flowerpot
单调队列+二分答案 #include <algorithm> #include <iostream> #include <cstring> #include < ...
- IOS开发之----全局变量extern的使用
extern,作用在IOS中,为了使用全局变量.比写在appDelegate和定义单例方便一些: 举例: 1.MyExternClass.h添加这个类,并在.m文件添加 代码 #import &quo ...
- 大数据学习——scala函数与方法
package com /** * Created by Administrator on 2019/4/8. */ object TestMap { def ttt(f: Int => Int ...