版权声明:本文为博主原创文章,转载请注明出处。                   https://blog.csdn.net/u012319493/article/details/82154113               </div><link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-f57960eb32.css"><div id="content_views" class="markdown_views"><!-- flowchart 箭头图标 勿删 --><svg xmlns="http://www.w3.org/2000/svg" style="display: none;"><path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path></svg><p>救雅典娜 <br>

时间限制:C/C++语言 1000MS;其他语言 3000MS

内存限制:C/C++语言 65536KB;其他语言 589824KB

题目描述:

黄金圣斗士欧洛斯要去圣域救雅典娜,需要从左上角出发,每次只能向右或向下走,最后达到右下角见到雅典娜。地图每个位置的值代表圣斗士要遭遇的事情,如果是负数,说明此处有阻击,要让圣斗士损失血量,如果是非负数,代表此处有血瓶,能让圣斗士回血,圣斗士从左上角走到右下角的过程中,走到任何一个位置时,血量都不能少于1,为了保证圣斗士能救出雅典娜,初始血量至少是多少?地图为一个二维数组map,如下矩阵。根据map,返回初始血量。

输入
一个n*m的二维数组

第一行:数组的行数n(n>0)

第二行:数组的列数m(m>0)

第三行:数组,每个位置的血量,行优先

输出
对于每个测试实例,要求输出初始血量

样例输入
3
3
-2 -3 3 -5 10 1 0 30 -5
样例输出
6

#include <vector>
#include <iostream>
using namespace std;int main()
{int n, m;cin >> n >> m;vector< vector<int> > v(n, vector<int>(m));for(int i=0; i<n; i++)for(int j=0; j<m; j++)cin >> v[i][j];vector< vector<int> > dp(n, vector<int>(m));dp[--n][--m] = v[n][m] > 0 ? 1 : -v[n][m] + 1;for(int j=m-1; j>=0; j--)dp[n][j] = max(dp[n][j+1] - v[n][j], 1);for(int i=n-1; i>=0; i--){dp[i][m] = max(dp[i+1][m] - v[i][m], 1);for(int j=m-1; j>=0; j--){int right = max(dp[i][j+1] - v[i][j], 1);int down = max(dp[i+1][j] - v[i][j], 1);dp[i][j] = min(right, down);}}cout << dp[0][0];
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29

英雄PK
时间限制:C/C++语言 1000MS;其他语言 3000MS
内存限制:C/C++语言 65536KB;其他语言 589824KB
题目描述:
AB两队进行PK,每队有n个英雄,每局一个英雄出战进行PK,(且每个英雄只能出战一次),每个英雄都有武力值,武力值大的英雄获胜,武力值相同平局,平局没有得失,每赢一局该队获得100个元宝,输一局损失100个元宝。求A队最多可以赢多少元宝。

输入
第一行:一个正整数n(0

#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;int result = -1000;
void swap(int &a, int &b)
{int temp = a;a = b;b = temp;
}void dfs(vector<int> &a, const vector<int> &b, int n, int dep, int ans)
{if(dep >= n){if(ans > result)result = ans;return;}for(int i=dep; i<n; i++){swap(a[dep], a[i]);int temp = 0;if(a[dep] > b[dep])temp = 100;else if(a[dep] < b[dep])temp = -100;dfs(a, b, n, dep+1, ans + temp);swap(a[dep], a[i]);}
}int main()
{int n;cin >> n;vector<int> a(n), b(n);for(int i=0; i<n; i++)cin >> a[i];for(int i=0; i<n; i++)cin >> b[i];dfs(a, b, n, 0, 0);cout << result;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
                 <link href="https://csdnimg.cn/release/phoenix/mdeditor/markdown_views-258a4616f7.css" rel="stylesheet"></div>

完美世界2020编程题-救雅典娜 英雄AB PK相关推荐

  1. 完美世界-2019春招第二道算法题--圣斗士救雅典娜

    一.题目介绍:圣斗士救雅典娜 * 题目介绍:完美世界-第2道算法题目 * 黄金圣斗士欧洛斯要去圣域救雅典娜,需要从左上角出发,每次只能向右或向下走,最后达到右下角见到雅典娜. * 地图的每个位置的值代 ...

  2. 完美世界2020校招笔试

    1.救雅典娜,通过60% import sysn = int(sys.stdin.readline().strip()) m = int(sys.stdin.readline().strip())_ ...

  3. system verilog编程题_拼多多2020校招部分算法编程题合集

    拼多多2020校招部分算法编程题2道,多多的魔术盒子和多多的排列函数 其实根据他的匹配职位我们可以看到,这5道题的难度还是并不高,只是作为一个初步筛选,我这边选择了前两道跟大家分享 [编程题一] 多多 ...

  4. 2020哔哩哔哩校招后端开发笔试编程题总结

    2020哔哩哔哩校招后端开发笔试编程题总结 1.给定一个正整数N,试求有多少组连续正整数满足所有数字之和为N? (1 <= N <= 10 ^ 9) 暴力求解法: package Day4 ...

  5. 电子学会 2020年6月 青少年软件编程Python编程等级考试一级真题解析(选择题+判断题+编程题)

    青少年编程Python编程等级考试一级真题解析(选择题+判断题+编程题) 2020年6月 一.选择题(共25题,共50分) 以下哪种输入结果不可能得到以下反馈: 重要的事情说三遍:安全第一!安全第一! ...

  6. 西安交通大学915考研--编程题Java代码踩坑(2020年真题)

    西安交通大学915考研–编程题Java代码踩坑(2020年真题) 目录 西安交通大学915考研--编程题Java代码踩坑(2020年真题) 2020.1--寻找方程组的解 2020.2--几组数中筛选 ...

  7. 拼多多2020校招部分编程题

    文章目录 拼多多2020校招部分编程题 多多的排列函数 canci 拼多多2020校招部分编程题 #include <iostream> using namespace std; int ...

  8. java2实验手册求方程的根_完成实验手册实验六:P101编程题2、3、4 Java程序设计上机实验手册(完稿)_吴娜炯.pdf_学小易找答案...

    [简答题]将一个文件的内容装换为大写,显示出来,并把内容复制到文件中去. [简答题]什么是自主访问控制?什么是强制访问控制? 什么是基于角色的访问控制? [简答题]根据第五课教学视频,实现可视化日历. ...

  9. 58同城2020校招转转算法岗笔试编程题

    58同城2020校招转转算法岗笔试编程题 第一题 题目描述:年末了要评选优秀员工了,给定一个优秀员工比率,在员工的评分上计算出能被选中的优秀员工的评分阈值.优秀员工人数=员工人数*优秀员工比率.员工人 ...

最新文章

  1. 结构体的两种声明方式:堆上和栈上以及在双链表的应用
  2. Redhat linux5.5下Oracle 10g 安装配置手册一
  3. Python进阶-----类的继承顺序
  4. 使用entrySet遍历Map类集合KV,而不是keySet方式进行遍历
  5. eclipse编译java项目class文件_动态编译 Java 代码以及生成 Jar 文件
  6. 判断点是否在三角形内
  7. 来看一下:构造函数的小秘密详解
  8. 未来世界的幸存者 -- 阮一峰
  9. 一键轻松去除抖音火山等短视频水印~
  10. 奶爸日记2 - 鑫鑫感动了婆婆
  11. 用matlab求roc曲线的面积Auc,sklearn计算ROC曲线下面积AUC
  12. angular使用高德地图
  13. Problem A. Snapper Chain 问题A.按扣链条 解决办法
  14. 更换NVMe SSD不用重装系统,Windows系统迁移
  15. 敏捷开发松结对编程系列:L型代码结构案例StatusFiltersDropdownList(上)
  16. loj 6184 无心行挽 虚树+DP+倍增
  17. VIJOS-P1232核电站问题
  18. 一元购抽奖号码 thinkphp php
  19. OpenWrt 编译及batman-adv组件选择(for Netgear WNDR3800)
  20. 电信 NB-IoT无缝对接阿里云IoT 物联网平台

热门文章

  1. 由c语言转向c++,我们需要做什么?
  2. 一种简单、实用的测量程序运行时间的方法
  3. Linux内核0.12完全注释
  4. 今天我勇敢的点就一个gpio口
  5. 小型机oracle命令,Oracle小型机如何选型
  6. java 反射 内存_Java内存到反射入门
  7. rust卡领地柜权限_RFID智能医疗耗材柜,上海智能高值耗材柜,国药智能医用耗材柜...
  8. TQ210——交叉编译器的安装
  9. 高嘌呤食物搜索引擎_“高嘌呤”的食物已发现,尿酸高的人,要尽量挑着吃!...
  10. 数据结构(6)二叉树