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

荒岛逃生游戏

题目描述
一个荒岛上有若干人,岛上只有一条路通往岛屿两端的港口,大家需要逃往两端的港口才可逃生。

假定每个人移动的速度一样,且只可选择向左或向右逃生。

若两个人相遇,则进行决斗,战斗力强的能够活下来,并损失掉与对方相同的战斗力;若战斗力相同,则两人同归于尽。

输入描述
给定一行非 0 整数数组,元素个数不超过30000;

正负表示逃生方向(正表示向右逃生,负表示向左逃生),绝对值表示战斗力,越左边的数字表示里左边港口越近,逃生方向相同的人永远不会发生决斗。

输出描述
能够逃生的人总数,没有人逃生输出0,输入异常时输出-1。

用例1
输入
5 10 8 -8 -5
输出
2
说明
第3个人和第4个人同归于尽,第2个人杀死第5个人并剩余5战斗力,第1个人没有遇到敌人。

nums = list(map(int,input().split()))
#本质上是一个栈的问题
def getresult():negative = 0 #从左边出来的负数的个数intnums = []for num in nums:if num==0:return -1if num>0:intnums.append(num)else:while True:if len(intnums)==0:negative+=1breakdif = num+intnums.pop()if dif>0:intnums.append(dif)breakelif dif<0:num=difelse:breakreturn negative+len(intnums)
print(getresult())
http://www.lryc.cn/news/463661.html

相关文章:

  • 玫瑰花HTML源码
  • 【wpf】07 后端验证及令牌码获取步骤
  • 学习中,师傅b站泷羽sec——xss挖掘过程
  • 什么是双因素身份验证?双因素身份验证的凭据类型有哪些?
  • 【MR开发】在Pico设备上接入MRTK3(一)——在Unity工程中导入MRTK3依赖
  • 利用移动式三维扫描技术创建考古文物的彩色纹理网格【上海沪敖3D】
  • Spring AI Java程序员的AI之Spring AI(四)
  • 精选20个爆火的Python实战项目(含源码),直接拿走不谢!
  • Rocky Linux 9安装Asterisk 20和freepbx 17脚本——筑梦之路
  • PSPICE FOR TI笔记记录1
  • Java集合剖析4】LinkedList
  • 基于MATLAB/octave的容积卡尔曼滤波(CKF)【带逐行注释】
  • Python编程探索:从基础语法到循环结构实践(下)
  • 简介openwrt系统下/etc/config/network文件生成过程
  • javaWeb项目-Springboot+vue-XX图书馆管理系统功能介绍
  • 华为ENSP用户权限深度解析:构建安全高效的网络管理
  • NFC之NDEF
  • 学习第三十六行
  • 停车场问题
  • 海康相 机
  • 用map实现el-table全选
  • 【开源免费】基于SpringBoot+Vue.JS社区团购系统(JAVA毕业设计)
  • Java进阶之路:构造方法
  • 2025秋招八股文--网络原理篇
  • C#基础-面向对象的七大设计原则
  • CSS 容器查询一探究竟
  • AI论文写作:如何轻松实现高原创度大揭秘
  • AtCoder Beginner Contest 375 A-E 题解
  • 其他-自己手动更换汽车电磁进排气阀0.9.2
  • 生成模型初认识