1400B. RPG Protagonist(贪心枚举)
发布日期:2021-06-30 10:20:43 浏览次数:3 分类:技术文章

本文共 1071 字,大约阅读时间需要 3 分钟。

这题过的人这么少我是没想到的emm

自 己 能 装 p , 随 从 能 装 f 自己能装p,随从能装f p,f

设 s < w 设s<w s<w

那 么 肯 定 贪 心 的 想 选 择 s , 但 是 问 题 在 于 不 知 道 每 个 人 选 取 多 少 s 那么肯定贪心的想选择s,但是问题在于不知道每个人选取多少s s,s

这 肯 定 有 影 响 , 这 决 定 了 每 个 人 浪 费 的 钱 这肯定有影响,这决定了每个人浪费的钱 ,

不知道,那就枚举呗

直 接 暴 力 枚 举 自 己 选 拿 几 个 s 直接暴力枚举自己选拿几个s s

那 么 自 己 剩 下 的 钱 一 定 全 拿 w 那么自己剩下的钱一定全拿w w

那 么 随 从 肯 定 优 先 拿 s 那么随从肯定优先拿s s

若 还 能 继 续 拿 , 再 拿 w 若还能继续拿,再拿w ,w

枚 举 可 以 保 证 所 有 清 况 遍 历 到 枚举可以保证所有清况遍历到

#include 
using namespace std;const int maxn=1009;#define int long longint t,n,cnts,cntw,p,f,s,w;signed main(){
cin >> t; while( t-- ) {
cin >> p >> f >> cnts >> cntw >> s >> w; if( s>w ) swap(s,w),swap(cnts,cntw); int ans=0,shu=min(p/s,cnts); for(int i=0;i<=shu;i++) {
int lins=cnts-i,linw=cntw,temp=i; int pp=p-s*i,ff=f; int k=min(ff/s,lins);//����õ�s ff-=k*s,temp+=k;//ffʣ�µ� k=min(linw,pp/w);//������w linw-=k,temp+=k; k=min(linw,ff/w); temp+=k; ans=max(ans,temp); } cout << ans << '\n'; }}

转载地址:https://issue-is-vegetable.blog.csdn.net/article/details/108232160 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:无源汇有上下界可行流[loj模板]
下一篇:1400E. Clear the Multiset(决策取优,或叫分治?)

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月19日 07时34分54秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章