news 2026/5/13 5:50:44

【牛客周赛 107】E 题【小苯的刷怪笼】题解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【牛客周赛 107】E 题【小苯的刷怪笼】题解

题目链接

题目大意

给定三个正整数n , a , k n, a, kn,a,k,其中:

每次操作,小红会选择一个或相邻两个怪物,使得它(们)的血量(各自)− 1 -11。当怪物的血量≤ 0 \leq 00时,怪物被消灭(相邻关系不会改变)。

小红一定会选择最优策略,使用尽可能少的攻击次数消灭这些怪物。

在这种情况下,小苯希望小红能使用恰好k kk次攻击消灭所有的怪物。

请你帮小苯找出一个可能的血量分配方案,如果不行输出− 1 -11

数据范围

Solution

首先,n = 1 n = 1n=1时,只能将a aa分配给一个怪物,所以只要看是否有a = k a = ka=k

下面考虑n > 1 n > 1n>1的情况。

由于需要恰好k kk次操作,所以我们需要找到操作次数的上下界。

先找下界L LL

再找上界R RR

所以只有当⌈ a 2 ⌉ ≤ k ≤ a − ⌊ n 2 ⌋ \left\lceil \dfrac{a}{2} \right\rceil \leq k \leq a - \left\lfloor \dfrac{n}{2} \right\rfloor2aka2n时,才有可能构造一个合法分配。


考虑从上界R = a − ⌊ n 2 ⌋ R = a - \left\lfloor \dfrac{n}{2} \right\rfloorR=a2n开始调整。

此时怪物1 11除了底部的1 11血量值,还有额外分配的a − n a - nan血量值,我们将其拿出s ss来分配给怪物2 22,这样怪物1 11的额外血量为a − n − s a - n - sans,怪物2 22的额外血量为s ss

接着考虑这种分配下的操作次数。

综上,操作次数为a − ⌊ n 2 ⌋ − s a - \left\lfloor \dfrac{n}{2} \right\rfloor - sa2ns

于是令k = a − ⌊ n 2 ⌋ − s k = a - \left\lfloor \dfrac{n}{2} \right\rfloor- sk=a2ns,得到s = a − ⌊ n 2 ⌋ − k . s = a - \left\lfloor \dfrac{n}{2} \right\rfloor - k.s=a2nk.

接下来只要验证这个解是否满足条件。

综上,解s = a − ⌊ n 2 ⌋ − k s = a - \left\lfloor \dfrac{n}{2} \right\rfloor - ks=a2nk合法。

那么额外分配给怪物1 11的为a − n − s = k − ⌈ n 2 ⌉ a - n - s = k - \left\lceil \dfrac{n}{2} \right\rceilans=k2n,怪物2 22的为a − ⌊ n 2 ⌋ − k a - \left\lfloor \dfrac{n}{2} \right\rfloor - ka2nk

C++ Code

#include<bits/stdc++.h>intmain(){std::ios::sync_with_stdio(false);std::cin.tie(nullptr);intn,a,k;std::cin>>n>>a>>k;if(n==1){std::cout<<(a==k?a:-1)<<"\n";return0;}if((a+1)/2>kora-n/2<k){std::cout<<-1<<"\n";return0;}std::vectorans(n,1);ans[0]+=k-(n+1)/2;ans[1]+=a-k-n/2;for(inti=0;i<n;i++){std::cout<<ans[i]<<" \n"[i==n-1];}return0;}
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/2 19:49:16

java计算机毕业设计陕商院餐厅管理系统 高校智慧食堂订餐与后台运营一体化平台 面向校园多餐厅的在线点餐与膳食服务系统

计算机毕业设计陕商院餐厅管理系统n1c029&#xff08;配套有源码 程序 mysql数据库 论文&#xff09; 本套源码可以在文本联xi,先看具体系统功能演示视频领取&#xff0c;可分享源码参考。后疫情时代&#xff0c;陕商院实行错峰就餐&#xff0c;传统窗口排长队、纸质登记易交叉…

作者头像 李华
网站建设 2026/5/3 8:22:48

互联网大厂Java面试:从Spring Boot到微服务架构的深度剖析

场景描述 在某个晴朗的下午&#xff0c;超好吃来到了一家知名互联网大厂面试Java开发岗位。面试官是一位资深的技术专家&#xff0c;他对超好吃的简历表现出了极大的兴趣。 第一轮面试&#xff1a;基础技术与框架 面试官&#xff1a; “我们先从基础开始&#xff0c;超好吃&…

作者头像 李华
网站建设 2026/4/30 23:34:47

2025年专业嵌入式软件开发公司权威榜单发布

在当今数字化飞速发展的时代&#xff0c;嵌入式软件在各个领域都发挥着至关重要的作用&#xff0c;从智能家居到工业自动化&#xff0c;嵌入式软件无处不在。2025年专业嵌入式软件开发公司权威榜单近日发布&#xff0c;为企业和开发者选择合适的合作伙伴提供了重要参考。以下是…

作者头像 李华
网站建设 2026/5/10 5:48:07

DownKyi智能下载系统:任务优先级深度优化终极指南

在B站视频下载的日常使用中&#xff0c;你是否曾因重要内容被排在下载队列末尾而焦急等待&#xff1f;DownKyi的智能优先级管理系统正是为了解决这一痛点而生&#xff0c;通过精细的任务调度算法&#xff0c;让你完全掌控下载任务的执行顺序。 【免费下载链接】downkyi 哔哩下载…

作者头像 李华