当前位置: 首页 > news >正文

郑州网站外包哪家好商家联盟会员管理系统

郑州网站外包哪家好,商家联盟会员管理系统,公司网站建设指南,山东网站建设培训题意#xff1a;一个魔塔游戏的地图是一棵以 111 为根的树#xff0c;起点为根#xff0c;除根外每个结点有一个怪物#xff0c;给定每个怪物血量、攻击、防御、奖励蓝宝石个数#xff08;加防御#xff09;#xff0c;勇士的血量、攻击、防御#xff0c;遇到怪物必须战…题意一个魔塔游戏的地图是一棵以 111 为根的树起点为根除根外每个结点有一个怪物给定每个怪物血量、攻击、防御、奖励蓝宝石个数加防御勇士的血量、攻击、防御遇到怪物必须战斗勇士永远先手求击败所有怪物后最多剩余血量。 n≤105n\leq 10^5n≤105所有战斗防御小于攻击。 由于不能加攻击所以打败一个怪物受到的攻击次数是固定的算出来记为 kik_iki​奖励宝石记为 bib_ibi​。而每获得一个宝石可以让之后的所有怪物减伤 kik_iki​。 先考虑菊花图也就是没有顺序限制。 考虑一个解 {p1,p2,p3,…,pn}\{p_1,p_2,p_3,\dots,p_n\}{p1​,p2​,p3​,…,pn​} 如果交换 pi,pi1p_i,p_{i1}pi​,pi1​ 让解变优即 dkpi(ddpi)kpi1dkpi1(ddpi1)kpidk_{p_i}(dd_{p_i})k_{p_{i1}}dk_{p_{i1}}(dd_{p_{i1}})k_{p_i}dkpi​​(ddpi​​)kpi1​​dkpi1​​(ddpi1​​)kpi​​ dpikpidpi1kpi1\frac{d_{p_i}}{k_{p_i}}\frac{d_{p_{i1}}}{k_{p_{i1}}}kpi​​dpi​​​kpi1​​dpi1​​​ 所以在没有先决条件的情况下按 diki\frac{d_i}{k_i}ki​di​​ 从小到大排序一个个选就可以了。定义性价比为 cidikic_i\frac{d_i}{k_i}ci​ki​di​​。 考虑树的情况删除点 uuu 后要么继续删儿子要么删其他点废话 如果 uuu 性价比最高的儿子 vvv 性价比比 uuu 高那么显然一定会继续删 vvv 。 所以我们可以把 u,vu,vu,v 合并成一个点 d、kd、kd、k 相加重新计算性价比。这时候 uuu 的其他儿子需要与合并后的点比较。 实现的时候把所有怪物压进按性价比排序的大根堆每次选出最大的如果父亲性价比比它低也就是还在堆里就和父亲合并否则删掉这个点所在的大点可以用并查集实现。 复杂度 O(nlog⁡n)O(n\log n)O(nlogn) #include iostream #include cstdio #include cstring #include cctype #include queue #include vector #include utility #define MAXN 100005 using namespace std; typedef long long ll; inline ll read() {ll ans0;char cgetchar();while (!isdigit(c)) cgetchar();while (isdigit(c)) ans(ans3)(ans1)(c^48),cgetchar();return ans; } vectorint e[MAXN],son[MAXN]; int bns[MAXN],cnt[MAXN],a[MAXN],b[MAXN],k[MAXN]; int fa[MAXN],rt[MAXN]; int find(int x){return rt[x]x? x:rt[x]find(rt[x]);} typedef pairdouble,int pi; priority_queuepi q; ll pb,pa,pd; int vis[MAXN],del[MAXN]; void dfs(int u,int f){fa[u]f;for (int i0;i(int)e[u].size();i) if (e[u][i]!f) dfs(e[u][i],u);} void dfs(int u) {pb-(a[u]-pd)*cnt[u],pdbns[u],del[u]1;for (int i0;i(int)son[u].size();i) dfs(son[u][i]); } int main() {int nread();for (int i1;in;i){int u,v;uread(),vread();e[u].push_back(v),e[v].push_back(u);}pbread(),paread(),pdread();for (int i2;in;i){int bl,d;blread(),a[i]read(),dread(),bns[i]b[i]read();cnt[i]k[i](bl-1)/(pa-d);}dfs(1,0);for (int i2;in;i) q.push(make_pair(1.0*b[i]/k[i],rt[i]i));del[1]1;while (!q.empty()){int uq.top().second;q.pop();if (vis[u]) continue;vis[u]true;if (del[fa[u]]) dfs(u);else{int ffind(fa[u]);k[f]k[u],b[f]b[u];son[rt[u]f].push_back(u);q.push(make_pair(1.0*b[f]/k[f],f));}}if (pb0) pb-1;coutpb;return 0; }
http://www.zqtcl.cn/news/448465/

相关文章:

  • 陕西西安潍坊网站seo外包
  • 计算机专业网站开发开题报告网站推广营销怎么做
  • 比较大的做网站的公司电影网站盗链怎么做
  • 江苏响应式网站建设哪里有台州网站制作方案
  • 深圳设计网站有哪些展览展会策划公司
  • 微信生活门户网站源码河北建设厅网站初始密码
  • 企业如何做网站推广成都外贸网站建设
  • 网页设计 网站建设 哪个好佛山网站建设推广服务
  • 东莞网站建设技术支持产品推广怎么写
  • 银川app购物网站制作公司网站建设怎样提升形象与品牌价值
  • 中山城市建设集团网站信誉好的邯郸网站建设
  • 做网站很赚钱吗贵阳网站建设费用
  • 设计网站的关键点用ps做招生网站
  • 制作网站公司服务器租赁一年的费用网页动画是如何制作出来的
  • 佛山网站优化有莱芜房产网新房
  • 西安英文旅游网站建设中国建筑工程门户商城
  • 山东企业建站软件购物网站是多少
  • 外链收录网站语音识别程序代做网站
  • 天津平台网站建设公司wordpress删除页头页尾
  • 网站加入站长统计wordpress设置手机浏览器
  • 服务器网站备案怎么做网站流量竞品分析
  • 四川省建设工程信息网站上海金融网站制作公
  • php7.2 wordpress黑帽seo软件
  • 网站后台cms做网站项目团队口号
  • 云南哪几个建网站公司九江做网站哪家好
  • 时尚网站模板代码网站模板炫酷
  • 股票网站怎么做动态表格live2d看板娘wordpress
  • 班级网站建设开题报告企业创新平台建设
  • 网站建设有什么要求建设电子商务网站的步骤
  • 百度推广和哪些网站有合作专业网站开发多少钱