目录
题目
有一个荒岛,只有左右两个港口,只有一座桥连接这两个港口,现在有一群人需要从两个港口逃生,有的人往右逃生,有的往左逃生,如果两个人相遇,则PK,体力值大的能够打赢体力值小的,体力值相同则同归干尽,赢的人才能继续往前逃生,并减少相应的体力
输入描述
一行非 0 整数,用空格隔开,正数代表向右逃生,负数代表向左逃生
输出描述
最终能够逃生的人数
示例1:
输入
5 10 8 -8 -5
输出2
说明
8与-8 相遇,同归于尽,10 遇到-5,打赢并减少五点体力,最终逃生的为5,5,均从右侧港口逃生,输出2
思路
1:比较简单的题目,利用一个两个栈,分别保存正数和负数,从头到尾遍历一遍就好了,在遍历的过程中,弹出两个栈的元素,进行比较即可。
2:细节要处理好,不管是正数还是负数,只要是赢了都要扣除响应的体力值。
定义规则:
&