#4036. 企鹅的游戏(penguin)
题目描述
Shiva养了一只小企鹅。小企鹅很聪明,她总是帮Shiva和他的好朋友想出很多很好玩的游 戏。其中有一个游戏特别经典,Shiva和他的小伙伴们百玩不厌。 游戏规则如下: 先给出2个正整数序列A1、A2,序列长度分别为L1,L2 (1 ≤ L1, L2 ≤ 5000)。你可以 做如下移动:移去第一个序列的最后P1 (P1≥1) 个数(可以是整个序列)并得到它们的和 S1,同时移去第二个序列的最后P2 (P2≥1)个数(可以是整个序列)并得到它们的和S2。 那么这次移动的费用为 (P1-S1)*(P2-S2)。你可以继续游戏直到两个序列为空,所以不允许一个数列空了,而另一个数列中还有数。而这次游戏 的费用就为每次移动费用的和。 你现在的目标是使这次游戏的费用最小。 注意:序列能为空当且仅当两个序列同时为空。
输入格式
第一行两个正整数L1,L2分别表示两个序列的长度; 第二行L1个正整数,描述序列A1[1…L1],第i个正整数为A1[i] 第三行L2个正整数,描述序列A2[1…L2],第i个正整数为A2[i] 除L1,L2外,所有的整数均不超过1000。
输出格式
一个正整数表示该次游戏的最小费用
样例
样例输入
3 2
1 2 3
1 2
样例输出
2
数据范围与提示
对于30%数据,1<=L1,L2<=50
对于60%数据,1<=L1,L2<=500
对于100%数据,1<=L1,L2<=5000
题解:
首先,让我们证明一个性质,每段对应区间必然是一对多或一对一。假如存在二对多的话,那必然可以拆成上述区间使答案更小。所以用动态规划。
对于每一个f[i][j],要么以i为一个区间,或j为一个区间,或i和j为一个对应区间。
#include<iostream>
#include<cstring>
#include<cstdio>
#include<cmath>
#include<algorithm>
#define N 5005
using namespace std;
int f[N][N],l1,l2,a1[N],a2[N];
int main()
{scanf("%d%d",&l1,&l2);for(int i=1;i<=l1;i++){scanf("%d",&a1[i]);a1[i]-=1;}for(int i=1;i<=l2;i++){scanf("%d",&a2[i]);a2[i]-=1;}memset(f,0x3f3f3f,sizeof(f));f[0][0]=0;for(int i=1;i<=l1;i++){for(int j=1;j<=l2;j++){int x=l1-i+1,y=l2-j+1;f[i][j]=min(f[i-1][j-1]+a1[x]*a2[y],min(f[i][j-1]+a1[x]*a2[y],f[i-1][j]+a1[x]*a2[y]));}}printf("%d\n",f[l1][l2]);return 0;
}
#4036. 企鹅的游戏(penguin)相关推荐
- 企鹅java游戏下载安装_企鹅企鹅生活安卓版游戏下载|企鹅企鹅生活手游下载v1.6.1-乐游网安卓下载...
<企鹅企鹅生活手游>这是一款玩法非常轻松有趣的点击类养成手游,游戏采用卡通风格设计非常的清新美观,游戏中,玩家将能体验到养育企鹅的各种乐趣,从孵化企鹅蛋到看着企鹅一点一点长大,非常的有意思 ...
- fcn从头开始_从头开始:简单游戏系列1-抓鱼
fcn从头开始 Recently, I've decided to take a break from coding on IDE's and go back to the basics of exp ...
- 【娱乐休闲】Ubuntu下的小游戏哦!
SuperTux and SuperTux2 类似于超级玛丽,不过主角换成了一只企鹅.安装方法: sudo apt-get install supertux Fish Fillets ...
- 树莓派基金会来号召用键盘生物学家研究企鹅
伦敦动物学会(Zoological Society of London)于2014年,与伍兹霍尔海洋研究所和牛津大学等组织合作监控企鹅的计划Penguin Lifelines有了新进展,伦敦动物学会现 ...
- 企鹅号一万阅读能有多少收益?企鹅号平台补贴怎么获得
首先介绍下企鹅自媒体平台的优势 企鹅媒体平台由腾讯推出,发布的文章将在天天快报.腾讯新闻客户端.微信新闻插件.手机QQ新闻插件.QQ公众号.手机腾讯网.QQ浏览器等 平台渠道进行一键分发,所以流量是相 ...
- IOS塔防游戏《坦克对大炮》的开发设计记录
IOS塔防游戏<坦克对大炮>的开发设计记录 引子 游戏已经在App Store上线几个月了,一直很想写点什么记录一下.真要写的时候,却又发现无从下笔没啥好写的.在2012年进入IOS,对于 ...
- 腾讯的断舍离:弃“企鹅”,保“虎斗”
配图来自Canva可画 2022年4月7日,企鹅电竞发布公告宣布,将于2022年6月7日23时59分终止运营.企鹅电竞经过多番垂死挣扎之后,最终还是选择了主动停运,体面离场.不过"企鹅&qu ...
- 《Linux游戏编程》——理解Linux文件系统标准
Linux游戏编程 Programming Linux Games [美]John R. Hall 著 作者:[美]John R. Hall 单位:Loki Software, Inc. 时间:200 ...
- 开源玩家福利:十大Linux免费游戏
假如当你考虑从Windows平台迁移至Linux平台时,"我能在Linux平台上游戏吗?"这类疑问正困扰着你,那么对此这有一个答案就是"快去Linux平台吧!" ...
- 谁说linux下无游戏,十大免费linux大型游戏集合
发表时间:2014-08-28 假如当你考虑从Windows平台迁移至Linux平台时,"我能在Linux平台上游戏吗?"这类疑问正困扰着你,那么对此这有一个答案就是&quo ...
最新文章
- html发送十六进制字符数组,十六进制数组怎么转换成字符串数组?
- 利用SpringBoot+RabbitMQ,实现一个邮件推送服务
- bzoj3744: Gty的妹子序列 (BIT 分块)
- 您对TOP Server的德语、中文和日语语言支持了解吗?(一)
- DirectDraw 学习:
- html图片下载链接怎么弄_html 导入图片
- java用正则表达式大全_Java 正则表达式 大全
- snownlp 原理_情感分析snownlp包部分核心代码理解
- TMS320DM642调试出现#10247-D creating output section .capChaACrSpace without a SECTIONS 解决办法...
- 那些著名的黑客事件 十二
- win11虚拟桌面如何使用 Windows11虚拟桌面的使用方法
- Android 11 状态栏电池图标的定制
- 帝国cms如何给网站添加百度统计代码,百度统计安装教程步骤分享
- 刷题总结——玉蟾宫(bzoj3039单调栈)
- 二维泊松方程求解-SIP-最速下降法-共轭梯度
- ApkScan-PKID查壳工具+脱壳(搬运)
- 通用电工实验室设备QY-DG28A
- 如何激活word2010
- Python代码优化:pyx编译pyd
- python实现阿里云OSS文件上传下载