网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
黄金宝箱满足排在它之前的所有箱子数字和等于排在它之后的所有箱子数字之和;
第一个箱子左边部分的数字和定义为0;最后一个箱子右边部分的数字和定义为0.
请帮阿里巴巴找到黄金宝箱,输出第一个满足条件的黄金宝箱编号,如果不存在黄金宝箱,请返回-1。
输入描述
箱子上贴的数字列表,使用逗号分隔,例如1,-1,0
宝箱的数量不小于1个,不超过10000
宝箱上贴的数值范围不低于-1000,不超过1000
输出描述
第一个黄金宝箱的编号
用例
输入 | 2,5,-1,8,6 |
输出 | 3 |
说明 | 下标3之前的数字和为:2 + 5 + -1 = 6 下标3之后的数字和为:6 = 6 |
输入 | 8,9 |
输出 | -1 |
说明 | 不存在符合要求的位置 |
输入 | 11 |
输出 | 0 |
说明 | 下标0之前的数字和为:0 下标0之后的数字和为:0 |
解析
理解题意 就如用例中所说,当只有一个箱子时,前后和为0,那么该箱子就是黄金箱子。若有多个时,则需要进行前后之和判断。若找不到合适的,那就返回-1,找到就返回箱子所在位置的索引。
import java.util.Arrays;
import java.util.Scanner;
public class T63 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String input = sc.nextLine();
int nums[] = new int[input.split(",").length];
if (nums.length == 1) {
![img](https://img-blog.csdnimg.cn/img_convert/6ece37b1b02211146e64c52ef6ccd3be.png)
![img](https://img-blog.csdnimg.cn/img_convert/b23f70070f5134ea9ebba4782ff4d54b.png)
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化的资料的朋友,可以添加戳这里获取](https://bbs.csdn.net/topics/618658159)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**