华为OD 荒岛逃生游戏

题目描述

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

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

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

输入描述

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

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

输出描述

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

用例1

输入

5 10 8 -8 -5

输出

2

说明

第3个人和第4个人同归于尽,第2个人杀死第5个人并剩余5战斗力,第1个人没有遇到敌人。

import java.util.Scanner;
import java.util.*;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {

    static boolean negative = false;
    static Stack<Integer> stack = new Stack<Integer>();

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int[] nums = Arrays.stream(in.nextLine().split(" ")).mapToInt(
                         Integer::parseInt).toArray();
        for (int num : nums) {
            dealNum(num);
        }
        System.out.print(stack.size());
    }

    static void dealNum(int num) {
        if (stack.size() == 0) {
            stack.push(num);
            if (num < 0) {
                negative = true;
            }
        } else {
            if ((num > 0 && !negative) || (num < 0 && negative)) {
                stack.push(num);
            } else {
                int value = stack.pop();
                int store = value + num;
                if ((store < 0 && !negative) || (store > 0 && negative)) {
                    dealNum(store);
                } else if ((store > 0 && !negative) || (store < 0 && negative)) {
                    stack.push(store);
                }
            }
        }
    }
}

 

华为od荒岛求生python是一款华为公司开发的手机游戏游戏荒岛求生为背景,玩家扮演角色通过使用Python编程语言来解决各种生存问题。 首先,Python作为一种功能强大且易于学习的编程语言,是游戏中玩家主要使用的工具之一。在游戏中,玩家可以通过编写Python代码来自动化一些生存任务,例如搭建避难所、循环收集资源等。通过学习Python语法和函数,玩家可以更高效地解决生存难题,提高生存能力。 其次,华为OD(OpenHarmony Developer)作为游戏平台,提供了丰富的资源和工具,使玩家可以利用Python语言编写游戏脚本,自定义游戏体验。玩家可以编写脚本来修改游戏规则,添加新的生存元素,增加游戏可玩性。同时,OD也提供了一系列的开发文档和教程,帮助玩家学习和使用Python语言,从而更好地玩转这款游戏。 最后,华为OD荒岛求生Python还支持多人联机模式,玩家可以和其他玩家一起组队冒险。通过Python编程,玩家可以实现队伍之间的协作和配合,更好地应对荒岛上的困境和挑战。这种多人联机模式不仅增加了游戏的趣味性,还可以促进玩家之间的交流和学习。 总之,华为OD荒岛求生Python是一款结合了编程学习和游戏娱乐的手机游戏,通过使用Python语言,玩家可以提高生存技能,自定义游戏体验,并且与其他玩家一起协作解决问题。这款游戏不仅提供了娱乐和挑战,还提供了学习编程的机会,让玩家在娱乐中提升自己的技能水平。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值