排兵布阵

题解

今天比赛上这道题好像是人均题呀。

好吧,就一个简单的,连优化都不需要的背包dp。

我们每次只需要处理在比第i个城堡的第j大的玩家大的情况,不必把所有的兵的情况都处理完。

然后就可以过了。

源码

#include<cstdio>
#include<cmath>
#include<cstring>
#include<iostream>
#include<algorithm>
#include<queue>
#include<vector>
#include<map>
using namespace std;
typedef long long LL;
#define re register
#define gc() getchar()
template<typename _T>
void read(_T &x){_T f=1;x=0;char s=gc();while(s>'9'||s<'0'){if(s=='-')f=-1;s=gc();}while(s>='0'&&s<='9'){x=(x<<3)+(x<<1)+(s^48);s=gc();}x*=f;
}
int s,n,m;
int a[105][105];
int dp[105][20005];
signed main(){ read(s);read(n);read(m);for(int i=1;i<=s;i++){for(int j=1;j<=n;j++)read(a[j][i]);}for(int i=1;i<=n;i++)sort(a[i]+1,a[i]+s+1);for(int i=1;i<=n;i++)for(int j=m;j>0;j--){dp[i][j]=dp[i-1][j];for(int k=0;k<=s;k++){if(j<a[i][k]*2+1)break;dp[i][j]=max(dp[i][j],dp[i-1][j-a[i][k]*2-1]+i*k);}}printf("%d\n",dp[n][m]);return 0;
}

谢谢!!!

[BJOI2019]排兵布阵相关推荐

  1. [BJOI2019] 排兵布阵(分组背包)

    [BJOI2019] 排兵布阵 题目描述 小 C 正在玩一款排兵布阵的游戏.在游戏中有 nnn 座城堡,每局对战由两名玩家来争夺这些城堡.每名玩家有 mmm 名士兵,可以向第 iii 座城堡派遣 ai ...

  2. 洛谷 P5322 [BJOI2019]排兵布阵

    P5322 [BJOI2019]排兵布阵 题目大意:玩游戏~~,对于 n 个城堡,有 m 个士兵可以分别派遣到这些城堡. 同时我们有 s 个对手,在每个城堡都会与每个玩家单独比拼,在第 i 个城堡与每 ...

  3. 【背包DP练习】洛谷 P5020货币系统 P1757通天之分组背包 P1064[NOIP2006 提高组]金明的预算方案 P5322 [BJOI2019]排兵布阵

    洛谷 P5020货币系统 https://www.luogu.com.cn/problem/P5020 思路是把货币从小到大排序,然后按顺序依次完全背包dp,每次dp检查i-1种面值的货币能不能凑出第 ...

  4. P5322 [BJOI2019] 排兵布阵

    P5322 [BJOI2019] 排兵布阵 Summary: Description 小 C 正在排兵布阵.有 n n n 座城堡,每局对战由两名玩家来争夺这些城堡.每名玩家有 m m m 名士兵,可 ...

  5. 洛谷P5322 [BJOI2019] 排兵布阵 题解

    洛谷P5322 [BJOI2019] 排兵布阵 题解 题意:小 C 正在玩一款排兵布阵的游戏.在游戏中有 n n n 座城堡,每局对战由两名玩家来争夺这些城堡.每名玩家有 m m m 名士兵,可以向第 ...

  6. P5322 BJOI2019 排兵布阵

    P5322 BJOI2019 排兵布阵 本题主要考察对模型的转化能力. 首先要察觉两条性质: 对于一个城堡,想打败一个玩家的同时用最少的士兵,肯定是正好派出这个玩家在这个城堡派出的士兵数量的二倍加一名 ...

  7. 洛谷P5322 [BJOI2019]排兵布阵【分组背包】

    题目描述 小 C 正在玩一款排兵布阵的游戏.在游戏中有 n 座城堡,每局对战由两名玩家来争夺这些城堡.每名玩家有 m 名士兵,可以向第 i 座城堡派遣 a_i名士兵去争夺这个城堡,使得总士兵数不超过 ...

  8. Java 解洛谷PP5322 [BJOI2019] 排兵布阵,包含完整的分组背包状态转移方法说明,通俗易懂

    01.题目及链接 题目链接:https://www.luogu.com.cn/problem/P5322 02.分组背包说明 分组背包:有k组物品,N个物品,一个容量是C的背包.每组物品有若干个,同一 ...

  9. [BJOI2019] 排兵布阵

    题目 这个\(dp\)出在普及都算水题吧 直接背包,\(O(nms)\)跑不满,非常稳 #include<cstdio> #include<vector> #include&l ...

最新文章

  1. 2022-2028年中国导热硅胶行业市场研究及前瞻分析报告
  2. hexo+git维护笔记
  3. 机器学习【吴恩达|周志华|李宏毅|算法】清单 #收藏#
  4. 06、主题 样式 国际化
  5. sql trim()函数去掉两头空格
  6. leetcode面试题 10.02. 变位词组
  7. 智慧交通day02-车流量检测实现02:多目标追踪
  8. Mybatis源码之缓存模块分析
  9. e300氛围灯哪里调节_让快乐来得更简单!体验新宝骏E300/E300 PLUS
  10. 我端午节又来免费送书了!
  11. Redis-数据结构04-整数集合(intset)
  12. easyUI datebox 日期空间斜杠格式化。例如将日期空间中显示2017-03-13,改为2017/03/13...
  13. Robocode教程4——Robocode的游戏物理
  14. 通过shell脚本检测MySQL服务信息
  15. 【集群仿真】基于matlab固定翼无人机集群仿真演示平台【含Matlab源码 1497期】
  16. ceph存储修改vm密钥(密码)
  17. Clustalx 多重序列比对图解教程(By Raindy)
  18. LinuxC:锁、条件变量、信号量实现线程间的同步 生产者与消费者 pthread_mutex_init pthread_cond_init sem_init
  19. 二、设计模式-必要的基础知识—旅行前的准备 #和设计模式一起旅行#
  20. 游戏安全与反外挂:加固工具介绍

热门文章

  1. 【微信小程序---如何引入阿里巴巴图标步骤】
  2. Android 小工具--圆形图片
  3. Pathon 连接数据库
  4. 神经网络建模的基本思想,建模方法神经网络设计
  5. python字典统计排序1_数据分析1_入门Python
  6. 小学计算机社团活动安排,小学计算机社团活动计划
  7. 439、Java框架93 -【SpringMVC - 拦截器】 2020.12.14
  8. 点云深度学习:多一维看世界【VALSE Webinar】Panel实录
  9. oracle组合单词是什么意思,oracle-bone是什么意思
  10. Unity Custom PBR材质