CSDN 编程竞赛三十二期题解
竞赛总览
CSDN 编程竞赛三十二期:比赛详情 (csdn.net)
竞赛题解
题目1、传奇霸业
传奇霸业,是兄弟就来干。小春(HP为a)遇到了一只黄金哥布林(HP为x)。小春每次能对哥布林造成b点伤害,哥布林每次能对小春造成y点伤害。作为玩家的小春怎么可能随便让哥布林打死呢!他有治疗神药,每次能恢复c点HP。HP无上限。小春需要操作多少次(治疗+攻击)才能打死哥布林?
int main () {int a, b, c, x, y;scanf ("%d %d %d %d %d", &a, &b, &c, &x, &y);role player, monster;player.hp = a; player.attack = b;monster.hp = x; monster.attack = y;int attack_num = (monster.hp / player.attack) + (monster.hp % player.attack != 0 ? 1 : 0);int attack_monster = monster.attack * (attack_num - 1);int t = 0;while (player.hp + t * c <= attack_monster){t = t + 1;attack_monster = attack_monster + monster.attack;}return 0;
}
本题描述上虽然有些即时游戏的感觉,但实际上用的是回合制的规则,类似赛尔号打谱尼。
在本题中,规则被简化了不少,没有技能释放次数(PP)、技能冷却时间(CD)等限制,不需要走位躲避怪物的攻击,怪物也不会回血。
可以直接计算出所需的攻击次数。玩家攻击之后,轮到怪物攻击,可以由此算出怪物对玩家的伤害量。
通常来说,玩家的HP不足以抵挡怪物的总伤害量,在攻击过程中,很大概率需要使用恢复道具。然而,玩过赛尔号的小伙伴应该都知道,使用道具恢复之后,还会被怪物揍一次。因此,吃药的过程需要单独拿出来计算。每次吃完药之后,更新玩家吃药次数和怪物攻击次数,直到初始HP与恢复HP之和超过怪物的总输出为止。
最终结果为攻击和吃药次数之和。
也可以采用另一种贪心的思路来解决此题,能直接干掉BOSS或者血量足以抵挡BOSS一次攻击时,玩家采用攻击策略;否则,玩家必须吃药。这种思路直接无脑循环就行了,可以让程序帮忙把答案算出来,不需要太多的分析。
题目2、严查枪火
X国最近开始严管枪火。像是ak, skr, m4a1。都是明令禁止的。现在小Q查获了一批违禁物品其中部分是枪支。小Q想知道自己需要按照私藏枪火来关押多少人(只有以上三种枪被视为违法)。
int main () {int result = 0;std::string str, data [] = {"ak", "skr", "m4a1"};while (std::cin >> str) {for (int i = 0; i < 3; i++) {if (str == data [i]) result += 1;}}return 0;
}
本题可以在输入之后直接比较字符串,而且这样做效率更高一些。但是,为了体现出程序自动化的思想,建议将所有符合条件的字符串存入列表中,利用循环自动进行比较。
输入数据比较成功时,对结果进行更新,直到将所有输入数据比较完成之后,输出最终结果。
题目3、蚂蚁家族
小蚂蚁群是一个庞大的群体,在这个蚂蚁群中有n只小蚂蚁,为了保证所有蚂蚁在消息传送的时候都能接收到消息,需要在他们之间建立通信关系。就是要求小蚂蚁都可以通过多只或者直接联系到其他人。已知几条小蚂蚁之间有通信关系,请问还需要再新建至少多少条关系?
这道题之前也考过一次,可以用并查集算法解决。
题目4、运输石油
某石油公司需要向A、B两地运输石油。两地的需求量不同,而一辆车只能装载一定量的石油。经过计算A地需要a辆车运输、B地需要b辆车运输,才能满足需求。现在一共有n辆车分布在各地,每辆车前往A、B两地运输石油均可以获得一定不等的利润。现在请你安排a辆车前往A地,b辆车前往B地运输石油,使得在满足A、B两地石油需求的前提下,获得最大的利润。每辆车只能前往一地运输石油。
#include <cstdio>int dp [1005][1005];int main () {int n, a, b;scanf ("%d %d %d", &n, &a, &b);for (int i = 1; i <= n; i++) {scanf ("%d %d", &award [0], &award [1]);for (int x = min (a, i), x_end = max (a - n + i, 0); x >= x_end; x--) {for (int y = min (b, i - x), y_end = max (a + b - n + i - x, 0); y >= y_end; y--) {if (x + y > i) {break;} else if (x == 0 && y == 0) {continue;} else if (x == 0) {dp [x][y] = max (dp [x][y], dp [x][y - 1] + award [1]);} else if (y == 0) {dp [x][y] = max (dp [x][y], dp [x - 1][y] + award [0]);} else {dp [x][y] = max (dp [x][y], dp [x - 1][y] + award [0], dp [x][y - 1] + award [1]);}}}}printf ("%d", dp [a][b]);return 0;
}
CSDN 编程竞赛三十二期题解相关推荐
- CSDN 编程竞赛三十一期题解
竞赛总览 CSDN 编程竞赛三十一期:比赛详情 (csdn.net) 本次竞赛的最后一道题的描述部分有些问题(题目描述与样例不符),另外,测试数据似乎也有点问题,试了多种方式,但最多只能通过10%的测 ...
- CSDN 编程竞赛二十一期题解
竞赛总览 CSDN 编程竞赛二十一期:比赛详情 (csdn.net) 竞赛题解 题目1.合并序列 有N个单词和字符串T,按字典序输出以字符串T为前缀的所有单词. #include <cstdio ...
- CSDN 编程竞赛二十三期题解
竞赛总览 CSDN 编程竞赛二十三期:比赛详情 (csdn.net) 竞赛题解 题目1.排查网络故障 A地跟B地的网络中间有n个节点(不包括A地和B地),相邻的两个节点是通过网线连接的.正常的情况下, ...
- CSDN 编程竞赛五十三期题解
竞赛总览 CSDN 编程竞赛五十三期:比赛详情 (csdn.net) 竞赛题解 题目1.贝博士外星信号统计 贝博士最近收到了一些来自外星的信号,它们看起来是一些字符.经过贝博士的转码,把这些字符用26 ...
- CSDN 编程竞赛二十八期题解
竞赛总览 CSDN 编程竞赛二十八期:比赛详情 (csdn.net) 本期竞赛的题目都很简单,但是非常考验读题和编码速度.这一次没有遇到bug,竞赛体验较好. 竞赛题解 题目1.小Q的鲜榨柠檬汁 团建 ...
- CSDN 编程竞赛二十五期题解
竞赛总览 CSDN 编程竞赛二十五期:比赛详情 (csdn.net) 本期竞赛第一题完成之后,提交代码显示运行中.自测也一直显示运行中,不能得到测试结果. 于是又赶紧完成第二题,但也显示运行中. 第三 ...
- CSDN 编程竞赛二十四期题解
竞赛总览 CSDN 编程竞赛二十四期:比赛详情 (csdn.net) 本次竞赛感觉打模板的题变少了,而且多了很多可以集思广益的题目,参赛体验很好. 竞赛题解 题目1.计数问题 试计算在区间1到n的所有 ...
- CSDN 编程竞赛五十五期题解
竞赛总览 CSDN 编程竞赛五十五期:比赛详情 (csdn.net) 吐槽:填空题参考答案错误,赛后竟然没有修正-- 竞赛题解 题目1.取石子 将n堆石子摆成一排.游戏规则:两人轮流从最左或最右的一堆 ...
- CSDN 编程竞赛二十九期题解
竞赛总览 CSDN 编程竞赛二十九期:比赛详情 (csdn.net) 竞赛题解 题目1.订班服 小A班级订班服了!可是小A是个小糊涂鬼,整错了好多人的衣服的大小.小A只能自己掏钱包来补钱了.小A想知道 ...
最新文章
- Nginx 路由--Location的使用
- shell中的变量及运算符
- dagger2 依赖注入
- 单核工作法12:现在专注一件事(下)
- 一文搞定哈希(六种构建、四种冲突解决方法、查找算法总结)
- 1.2 torch_数据预处理
- 【足迹C++primer】52、,转换和继承虚函数
- jdk 1结尾和2结尾_“与巢一起工作”的结尾对您意味着什么
- 3.7.6 - String Methods
- 剑指offer面试题57. 和为s的两个数字(双指针)
- HDU 4371 Alice and Bob
- python爬虫简历项目怎么写_python爬虫简历
- 教育机构计算机机房制度,现代教育与信息技术中心机房管理制度
- ADS129X芯片中文资料(二)——模拟功能部分介绍
- iOS和Android和H5交互WebViewJavascriptBridge
- 撸了这么多代码,你真的了解字体吗?
- 坚鹏:苏州银行《银行数字化运营之行动篇》课程培训圆满结束
- golang Use of package XXX without selector
- b2b2c商城系统开发
- 影像组学工作站:SCI零基础复现,三天出一个代表作
热门文章
- 最适合和孩子一起看的100部BBC经典纪录片
- AI做题家卷疯了!高数考试正确率81%,竞赛题成绩超过计算机博士
- orcale 的入门知识(有文章上的有自创的)
- java 正则匹配手机号,身份证号,邮箱
- DPDK 中国峰会的日程安排新鲜出炉
- 史上最全金融产品架构分析二:证券公司
- 《Adobe After Effects CS4经典教程》——1.3 创建合成图像和组织图层
- mysql查询总成绩的前3名学生信息
- html5初中生能学会吗,初中生迎来坏消息,或不能再随便上私立高中,学生家长喜忧参半...
- 服务器系统log文件在哪,云服务器日志在哪里