题目描述

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)相关推荐

  1. 企鹅java游戏下载安装_企鹅企鹅生活安卓版游戏下载|企鹅企鹅生活手游下载v1.6.1-乐游网安卓下载...

    <企鹅企鹅生活手游>这是一款玩法非常轻松有趣的点击类养成手游,游戏采用卡通风格设计非常的清新美观,游戏中,玩家将能体验到养育企鹅的各种乐趣,从孵化企鹅蛋到看着企鹅一点一点长大,非常的有意思 ...

  2. fcn从头开始_从头开始:简单游戏系列1-抓鱼

    fcn从头开始 Recently, I've decided to take a break from coding on IDE's and go back to the basics of exp ...

  3. 【娱乐休闲】Ubuntu下的小游戏哦!

    SuperTux  and SuperTux2 类似于超级玛丽,不过主角换成了一只企鹅.安装方法:         sudo apt-get install supertux Fish Fillets ...

  4. 树莓派基金会来号召用键盘生物学家研究企鹅

    伦敦动物学会(Zoological Society of London)于2014年,与伍兹霍尔海洋研究所和牛津大学等组织合作监控企鹅的计划Penguin Lifelines有了新进展,伦敦动物学会现 ...

  5. 企鹅号一万阅读能有多少收益?企鹅号平台补贴怎么获得

    首先介绍下企鹅自媒体平台的优势 企鹅媒体平台由腾讯推出,发布的文章将在天天快报.腾讯新闻客户端.微信新闻插件.手机QQ新闻插件.QQ公众号.手机腾讯网.QQ浏览器等 平台渠道进行一键分发,所以流量是相 ...

  6. IOS塔防游戏《坦克对大炮》的开发设计记录

    IOS塔防游戏<坦克对大炮>的开发设计记录 引子 游戏已经在App Store上线几个月了,一直很想写点什么记录一下.真要写的时候,却又发现无从下笔没啥好写的.在2012年进入IOS,对于 ...

  7. 腾讯的断舍离:弃“企鹅”,保“虎斗”

    配图来自Canva可画 2022年4月7日,企鹅电竞发布公告宣布,将于2022年6月7日23时59分终止运营.企鹅电竞经过多番垂死挣扎之后,最终还是选择了主动停运,体面离场.不过"企鹅&qu ...

  8. 《Linux游戏编程》——理解Linux文件系统标准

    Linux游戏编程 Programming Linux Games [美]John R. Hall 著 作者:[美]John R. Hall 单位:Loki Software, Inc. 时间:200 ...

  9. 开源玩家福利:十大Linux免费游戏

    假如当你考虑从Windows平台迁移至Linux平台时,"我能在Linux平台上游戏吗?"这类疑问正困扰着你,那么对此这有一个答案就是"快去Linux平台吧!" ...

  10. 谁说linux下无游戏,十大免费linux大型游戏集合

     发表时间:2014-08-28 假如当你考虑从Windows平台迁移至Linux平台时,"我能在Linux平台上游戏吗?"这类疑问正困扰着你,那么对此这有一个答案就是&quo ...

最新文章

  1. 一文梳理2019年腾讯广告算法大赛冠军方案
  2. RPM安装命令总结--转载
  3. content type 介绍
  4. CodeBlocks 汉化教程及多语言
  5. eclipse @ 注释为何一写就报错
  6. Windows 2003下×××服务器架设攻略
  7. .NET Core也可以使用MongoDB了
  8. oracle中block
  9. 我国企业对开源社区的贡献度_开源对企业有利的6个理由
  10. 7种用户界面UI原则
  11. Spring Boot中日志框架的使用——Logback
  12. linux下c语言版线程池
  13. 127.0.0.1和localhost和本机IP三者的区别
  14. 游戏优化利器 | Android GPU Inspector 开放 Beta 测试版
  15. VMware虚拟机优化,提高虚拟机运行速度的方法?
  16. 关于NGS中“depth”和“coverage”的理解
  17. 基于boost库的站内搜索引擎
  18. CF596D Wilbur and Trees
  19. 导出带有合计行的excel
  20. 智能合约开发——TypeScript 基础(全)

热门文章

  1. HR面试常见问题汇总
  2. 人工智能数学基础:泰勒(Taylor)公式
  3. WinCap数据包显示
  4. 为什么微博超话显示服务器有点累,微博超话帖子被吞是什么原因?使用时,注意这些事项...
  5. 用大数据“魔镜”照出电商假货
  6. aka名字_中国新说唱:马来王子尤长靖,尤长靖自编AKA名字
  7. 优盘扩容修复 u盘工具
  8. c语言ascii码字符串转16进制,C语言 16进制与ascii码互转
  9. C#进阶(一)——TXT文件处理:以导线网近似平差为例
  10. 面试官问你为什么离开上一家公司该怎么回答? 1