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

深圳福永网站建设龙华网站建设yihekj

深圳福永网站建设,龙华网站建设yihekj,微网站设计尺寸,外国可以做站外推广的网站题目 小蓝正在玩一款游戏。游戏中魏蜀吴三个国家各自拥有一定数量的士兵 X,Y,Z#xff08;一开始可以认为都为 0#xff09;。 游戏有 n个可能会发生的事件#xff0c;每个事件之间相互独立且最多只会发生一次#xff0c;当第 i个事件发生时会分别让 X,Y,Z 增加 A i , B…题目 小蓝正在玩一款游戏。游戏中魏蜀吴三个国家各自拥有一定数量的士兵 X,Y,Z一开始可以认为都为 0。 游戏有 n个可能会发生的事件每个事件之间相互独立且最多只会发生一次当第 i个事件发生时会分别让 X,Y,Z 增加 A i , B i , C i A_i,B_i,C_i Ai​,Bi​,Ci​。 当游戏结束时 (所有事件的发生与否已经确定)如果 X,Y,Z的其中一个大于另外两个之和我们认为其获胜。 例如当 XYZ时我们认为魏国获胜。 小蓝想知道游戏结束时如果有其中一个国家获胜最多发生了多少个事件? 如果不存在任何能让某国获胜的情况请输出 −1。 输入格式 输入的第一行包含一个整数 n。 第二行包含 n个整数表示 A i A_i Ai​相邻整数之间使用一个空格分隔。 第三行包含 n个整数表示 B i B_i Bi​相邻整数之间使用一个空格分隔。 第四行包含 n 个整数表示 C i C_i Ci​相邻整数之间使用一个空格分隔。 输出格式 输出一行包含一个整数表示答案。 数据范围 对于 40%的评测用例n≤500 对于 70%的评测用例n≤5000 对于所有评测用例 1 ≤ n ≤ 1 0 5 0 ≤ A i , B i , C i ≤ 1 0 9 1≤n≤10^50≤A_i,B_i,C_i≤10^9 1≤n≤1050≤Ai​,Bi​,Ci​≤109。 注意蓝桥杯官方给出的关于 A i , B i , C i A_i,B_i,C_i Ai​,Bi​,Ci​ 的数据范围是 1 ≤ A i , B i , C i ≤ 1 0 9 1≤Ai,Bi,Ci≤10^9 1≤Ai,Bi,Ci≤109但是这与给出的输入样例相矛盾因此予以纠正。 输入样例 3 1 2 2 2 3 2 1 0 7 输出样例 2 样例解释 发生两个事件时有两种不同的情况会出现获胜方。 发生 1,2 事件时蜀国获胜。 发生 1,3 事件时吴国获胜。 代码(python版本) nint(input()) def check(x,y,z)-int:w[]for i in range(n):w.append(x[i]-y[i]-z[i])w.sort(reverseTrue)res-1sum0for i in range(n):sumw[i]if sum0:resi1return res alist(map(int,input().split())) blist(map(int,input().split())) clist(map(int,input().split())) print(max(check(a,b,c),check(b,a,c),check(c,a,b)))代码cpp版本 代码先欠着思路 本题是一道贪心题。当我一开始看这个题目的时候首先想到的就是一道dfs题但是当我看到数据范围为 1 0 5 10^5 105的时候我直接人傻这还怎么dfs。于是换一个思路。 首先因为这个数据范围是 1 0 5 10^5 105,那么我们需要将时间复杂度控制在 n l o g n nlogn nlogn中。 本题要求的是一个国家打赢两个国家最多能发生多少次事件看到最多我就感觉是一道贪心题那么怎么贪心呢 首先我们需要想明白怎么贪那我们可以先假设三个国家分别是ABC然后我们假设 A B C ABC ABC,那么ABC到底是哪三个国家呢这个直接可以枚举出来A是魏蜀吴三个其中之一剩下的B和C就是除了A以外的两个国家。 那么我们可以写一个函数来判断 A B C ABC ABC最多能要多少次 那么我们可以遍历ABC三个数组然后用一个数组W来接受一下A国和BC国的兵力差也就是W[i]A[i]-B[i]-C[i]的值那么W[i]的含义是什么呢很明显当W[i]0的时候说明A的兵力比BC的要多这个事件我们当然要选。然后进行排序接下来就是每次都获取到当前的兵力。然后用一个sum来记录sum代表的是什么意思呢就是A当前比BC多sum个兵然后我们依次进行遍历sum不断累加W[i]当sum累加当前的兵力之后还是大于零说明当前的事件容许发生这时候就该让res了。直到sum小于0的时候就不行了。 然后我们来看这个思路整个的时间复杂度正好是 n l o g n nlogn nlogn(sort的时间复杂度)。 最后我们只需要调用上面的函数三次即可也就是check(魏蜀吴)check(蜀魏吴)check(吴蜀魏)然后三者取最大值就行。
http://www.w-s-a.com/news/102853/

相关文章:

  • 做网站与做游戏那个好网站域名怎么起
  • 有没有做cad单的网站银行网站建设方案视频
  • 和各大网站做视频的工作高校网站群管理系统
  • 中国建设人才服务信息网是正规网站怎么注销自己名下的公司
  • 网站开发新型技术那些网站做任务领q币
  • 海口手机网站建设wordpress微支付宝
  • 做公司网站需要几天深圳自定义网站开发
  • 做网站学多长时间可以学会推广软件公司
  • 网络网站设计培训长沙建站模板大全
  • 站群搭建移动端处理器天梯图
  • 岳池发展建设集团有限公司门户网站湛江seo咨询
  • 手机网站工具关键词排名是什么意思
  • 游民星空是谁做的网站沈阳网站托管公司
  • 做网站搭建需要什么人vs2017移动网站开发
  • 购物网站开发需要什么技术怎么查看网站是否备案
  • 学做电商那个网站好网站建设投票主题
  • 中卫网站推广网络营销毕业设计做网站大小有什么要求
  • 做问卷网站义乌网站建设推广专家
  • 不会编程怎样建设网站昆明做网站哪家
  • 直播网站模板新营销平台电商网站
  • 建设部指定招标网站免费的企业查询软件
  • 做前端常用的网站及软件下载平台优化是什么意思
  • 企石镇仿做网站wordpress 网站白屏
  • 班级网站建设规划书专业定制网红变色杯
  • 上海网站设计公司电话甘肃路桥建设集团有限公司官方网站
  • 哈尔滨网站建设网站开发陕西省建设监理工程协会网站
  • 微信公众号电商网站开发wordpress增加论坛
  • 网站建设视频百度网盘下载免费wordpress搭建
  • 哈尔滨市网站建设公司汕头市公司网站建设平台
  • 东莞网站建设方案外包甘肃两学一做网站