|
27 | 27 | */
|
28 | 28 | public class _548 {
|
29 | 29 |
|
30 |
| - public boolean splitArray(int[] nums) { |
31 |
| - int len = nums.length; |
32 |
| - if (len < 7) { |
33 |
| - return false; |
34 |
| - } |
35 |
| - int[] sum = new int[len]; |
36 |
| - sum[0] = nums[0]; |
37 |
| - for (int i = 1; i < len; i++) { |
38 |
| - sum[i] = sum[i - 1] + nums[i]; |
39 |
| - } |
40 |
| - for (int j = 3; j < len - 3; j++) { |
41 |
| - Set<Integer> set = new HashSet<>(); |
42 |
| - for (int i = 1; i < j - 1; i++) { |
43 |
| - if (sum[i - 1] == sum[j - 1] - sum[i]) { |
44 |
| - /**this is sum(0, i-1) and sum(i+1, j-1)*/ |
45 |
| - set.add(sum[i - 1]); |
46 |
| - } |
| 30 | + public static class Solution1 { |
| 31 | + public boolean splitArray(int[] nums) { |
| 32 | + int len = nums.length; |
| 33 | + if (len < 7) { |
| 34 | + return false; |
47 | 35 | }
|
48 |
| - for (int k = j + 2; k < len - 1; k++) { |
49 |
| - if (sum[k - 1] - sum[j] == sum[len - 1] - sum[k] && set.contains(sum[k - 1] - sum[j])) { |
50 |
| - /**this is sum(j+1, k-1) and sum(k+1, len-1)*/ |
51 |
| - return true; |
| 36 | + int[] sum = new int[len]; |
| 37 | + sum[0] = nums[0]; |
| 38 | + for (int i = 1; i < len; i++) { |
| 39 | + sum[i] = sum[i - 1] + nums[i]; |
| 40 | + } |
| 41 | + for (int j = 3; j < len - 3; j++) { |
| 42 | + Set<Integer> set = new HashSet<>(); |
| 43 | + for (int i = 1; i < j - 1; i++) { |
| 44 | + if (sum[i - 1] == sum[j - 1] - sum[i]) { |
| 45 | + /**this is sum(0, i-1) and sum(i+1, j-1)*/ |
| 46 | + set.add(sum[i - 1]); |
| 47 | + } |
| 48 | + } |
| 49 | + for (int k = j + 2; k < len - 1; k++) { |
| 50 | + if (sum[k - 1] - sum[j] == sum[len - 1] - sum[k] && set.contains(sum[k - 1] - sum[j])) { |
| 51 | + /**this is sum(j+1, k-1) and sum(k+1, len-1)*/ |
| 52 | + return true; |
| 53 | + } |
52 | 54 | }
|
53 | 55 | }
|
| 56 | +
8000
span> return false; |
54 | 57 | }
|
55 |
| - return false; |
56 | 58 | }
|
57 | 59 |
|
58 | 60 | }
|
0 commit comments