按照紫书的思路,重点在于可以忽略有哪些具体的位置没有送到,而仅仅关注于已经送到的地方以及下一步需要送到哪些地方,具体实现见如下代码:

#include<iostream>
#include<vector>
#include<string>
#include<set>
#include<stack>
#include<queue>
#include<map>
#include<algorithm>
#include<cmath>
#include<iomanip>
#include<cstring>
#include<sstream>
#include<cstdio>
#include<deque>
using namespace std;int T,n;
int position[110], value[110];
int dp[110][110][2][110];
int visit[110][110][2][110];int get(int l,int r,int pos,int amount){if (amount == 0) return 0;if (visit[l][r][pos][amount] == T) return dp[l][r][pos][amount];visit[l][r][pos][amount] = T;int& ans = dp[l][r][pos][amount];ans = 0;for (int i = 0; i < l; i++) ans = max(ans, get(i, r, 0, amount - 1) - amount*abs(position[i] -(pos ? position[r] : position[l])) + value[i]);for (int i = n - 1; i > r; i--) ans = max(ans, get(l, i, 1, amount - 1) - amount*abs(position[i] -(pos ? position[r] : position[l])) + value[i]);return ans;
}int main(){cin >> T;memset(visit,0,sizeof(visit));while (T--){cin >> n;for (int i = 0; i < n; i++) cin >> position[i];for (int i = 0; i < n; i++) cin >> value[i];int ans = 0;for (int k = 1; k <= n; k++){for (int i = 0; i < n; i++){ans = max(ans, get(i, i, 0, k - 1) - k*abs(position[i]) + value[i]);}}cout << ans << endl;}
}

1628 Pizza Delivery相关推荐

  1. Gym - 101986F Pizza Delivery(最短路+DAG必经边)

    题目链接:点击查看 题目大意:给出一个n个点m条边的有向无环图,每条边的权重为w,起点为1,终点为2,现在对每一条边询问: 若将该边的方向取反,权值不变,则对最短路有无影响,分为三种情况讨论: 若最短 ...

  2. 【Gym - 101986F】Pizza Delivery(Dijkstra最短路,建图方式,反向建图,Tarjan求桥,图论模板)

    题干: 题目大意: 一个有向图,编号1~n的n个点,m条边,规定1为起点,2为终点,问对于每一条边,反转它的方向,最短路会不会发生改变,如果变短了,输出HAPPY,变长了或者到达不了了输出SAD,不变 ...

  3. Gym - 101986F Pizza Delivery (最短路必经路径)

    题意:给你一个有向图,每一条边在第i天都会反向,问反向后的最短路是否有变化.每次反向都是独立的. 解题思路:我们先把起点到所有点的最短路求出来,然后把所有边反向,然后求终点到所有点的最短路. 这样我们 ...

  4. 紫书《算法竞赛入门经典》

    紫书<算法竞赛入门经典>题目一览 第3章 数组和字符串(例题) UVA 272 TEX Quotes UVA 10082 WERTYU UVA 401 Palindromes UVA 34 ...

  5. 适合初学者的数据结构_数据结构101:图-初学者的直观介绍

    适合初学者的数据结构 了解您每天使用的数据结构 (Get to know the data structures that you use every day) Welcome! Let's Star ...

  6. yd的拔钉子之路之 POI 2017

    写在前面的一些话 如果我NOIP没退役,这大概会写成一个系列吧,所以这算是系列的开始,要写一些奇怪的东西? 首先解释下什么叫"拔钉子",其实就是在钉子上做题嘛......至于钉子具 ...

  7. 离开互联网行业_如何使用互联网再也不会离开家

    离开互联网行业 Thanks to the Internet, activities like "going outside" or "being a productiv ...

  8. 准确性 敏感性 特异性_如何掌握类型特异性的艺术

    准确性 敏感性 特异性 Do more specific definitions result in less flexibility? 更具体的定义会导致灵活性降低吗? In this post I ...

  9. [转载] c++多态与java多态性_Java中的多态性

    参考链接: Java中的加法和串联 c++多态与java多态性 Polymorphism is one of the core concepts of OOPS paradigm. The meani ...

最新文章

  1. exsi5.5安装过程中遇到的一个问题
  2. 怎么看电脑电源多少w_电脑电源怎么测试通电
  3. bgi::detail::content用法的测试程序
  4. 如何写年终总结(转)
  5. 自定义的全局公共样式
  6. 基于Python的管理系统(附源码)
  7. 高职高考要计算机证,高职高考的报名条件需要技能证书
  8. android手势密码csdn,LeetCode 351. 安卓系统手势解锁(回溯)
  9. 分享!微信群二维码突破100人限制和7天不过期的方法
  10. docker下编译mangoszero WOW60级服务端(一)
  11. WEB-漏洞总结(sql注入详解)
  12. 1138: C语言合法标识符 C语言
  13. 真实骑手数据:73万大学毕业生在送外卖?
  14. oracle数据库按日期查询,关于Oracle数据库日期范围查询的两种实现方法详解,oracle详解...
  15. xp网络发现不了自己的计算机,xp系统“网络发现”功能启用不了的方案介绍
  16. 【机器人基础】机器人阻抗控制概念
  17. 【夏目鬼鬼分享】RabbitMQ发布/订阅广播模式
  18. 百度快照被劫持百度网址安全中心提醒您:该页面可能已被非法篡改
  19. pandas处理Excel基本方法
  20. 数据挖掘BUC算法计算冰山立方体的python实现

热门文章

  1. 21世纪 直销势不可挡
  2. springbootsecurity实现权限管理详细步骤
  3. 北京大学计算机科学技术研究所研究员万小军:机器写稿技术与应用 | CCF-GAIR 2017...
  4. Uber数据泄露事件本可以使用区块链…
  5. 【数据结构】第六章——图(详解)
  6. 自兴人工智能——Python第三课(字符串和字典)
  7. 计算机用户怎么配置漫游,Windows下漫游用户配置和强制漫游用户配置详细过程...
  8. MAC恢复出厂设置(官方教程)
  9. android中隐藏的功能,iOS与Android的奥秘:那些你未必了解的隐藏功能
  10. 终端滑模(Terminal滑模)理解