首页
/
每日頭條
/
生活
/
枚舉算法思想
枚舉算法思想
更新时间:2026-05-03 16:21:17

題目來源:Vjudge 1048506

枚舉算法思想(算法枚舉趣題)1

現在有某英雄要放n(10e9)個技能,有冷卻時間,x秒放一次。

1、m個天賦可以學習,第i個天賦花b[i]塊錢,作用是把冷卻時間直接改成a[i]。

2、可以找個打手。有k個打手可以找,請第i個打手需要花掉d[i]塊錢,他會直接幫你放出c[i]次技能。

m,k (10e5)

給出初始金錢數,問所用的最少的時間。

天賦隻能學習一個,打手也隻能請一位。

思路:枚舉學哪個技能,剩下的錢找哪個打手最值。

關于選打手:不選該x打手的情況為打手不值,也就是有能力比x強,花費還便宜的。按照花費排序。

枚舉算法思想(算法枚舉趣題)2

# include <cstdio> # inelinde <cstdlib> # include <vector> # inelude <cstring> # Enelude <algorithm> using namespace std; typedef long long ll; ll a[100005],b[100005];//b錢,a冷卻時間 ll n,m,k,x,s; //n個技能,m個天賦,k個打手,x秒放一次,s錢數 struct hero { ll c,d;//c次技能,d塊錢 friend bool operator < (hero a,hero b) { return a.d<b.d; } hero(ll _c=0,ll _d=0) { c=_c,d=_d; } }; hero h[100005]; vector <hero> ok; void inp() { ll i; memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); memset(h,0,sizeof(h)); ok.clear(); scanf("%lld%lld%lld%lld%lld",&n,&m,&k,&x,&s); for(i=1; i<=m; i ) scanf("%lld",&a[i]); for(i=1; i<=m; i ) scanf("%lld",&b[i]); for(i=1; i<=m; i ) scanf("%lld",&h[i].c); for(i=1; i<=m; i ) scanf("%lld",&h[i].d); } void gao() { ll i,now=0; sort(h 1,h 1 k); ok.push_back(hero(0,0)) for(i=1; i<=k; i ) { if(h[i].c<=now) continue; now=max(now,h[i].c); ok.push_back(h[i]); } } ll les(ll p) { //二分查找 return(*(--upper_bound(ok.begin(),ok.end(),hero(0,p)))).c; } ll calc() { ll i,t,ans=99999999999999999999; a[0]=x,b[0]=0; for(i=0; i<=m; i ) if(s>=b[i]) { if(n-les(s-b[i])>0) t=(n-les(s-b[i]))*a[i]; else t=0; ans=min(ans,t); } printf("%lld\n",ans); } void work{ inp(); gao(); calc(); } int main(void) { ll t; //需要計算的英雄數 scanf("%lld",&t); while(t--) work(); }

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
桂花的繁殖方法
桂花的繁殖方法
桂花的繁殖方法?桂花樹的繁殖方法有很多,像一般常見的,有播種繁殖,扡插繁殖,嫁接繁殖等等扡插繁殖,一般是選取母株上,一段健康的枝條作為插穗,然後載重到土壤當中即可,下面我們就來說一說關于桂花的繁殖方法?我們一起去了解并探讨一下這個問題吧!桂...
2026-05-03
白果炖雞怎麼做
白果炖雞怎麼做
白果炖雞怎麼做?土母雞500克,白果(去殼)100克,海帶結3個,香菇2塊,生姜一根,大蔥一根,胡椒5顆,鹽适量,料酒适量,食用油适量,今天小編就來聊一聊關于白果炖雞怎麼做?接下來我們就一起去研究一下吧!白果炖雞怎麼做土母雞500克,白果(...
2026-05-03
mfc教程
mfc教程
mfc教程?首先在學習MFC之前一定先把C++,C語言的基礎打好,mfc作為微軟底層的開發工具主要就是基于c++mfc中涉及到了太多c++中的概念,如果直接去學習mfc,必然好多概念都看不懂,C++的知識以後肯定還是需要再補習因此,一開始不...
2026-05-03
ip地址劃分方法
ip地址劃分方法
ip地址劃分方法?根據網絡号和主機号的不同,分為A,B,C,D,E類其中,A類網絡号少,網絡内主機号多,通常是比較大的網絡,如一個國家或者地區的網絡,我來為大家講解一下關于ip地址劃分方法?跟着小編一起來看一看吧!ip地址劃分方法根據網絡号...
2026-05-03
結發夫妻和二婚哪個好
結發夫妻和二婚哪個好
婚姻是什麼?沒結婚的想進去,結了婚的想出來。是一種奇怪的感受,為什麼會有那麼大的落差呢?結婚前沒有生活上瑣事情要操心,婚姻是戀人之間的另一種生活。結婚了,有了更多的責任和義務,生活上的事情,充滿了矛盾和煩惱,導緻夫妻感情出現裂紋。有的夫妻能...
2026-05-03
Copyright 2023-2026 - www.tftnews.com All Rights Reserved