給定一個由
和
1
組成的數組
A
,将數組分成 3 個非空的部分,使得所有這些部分表示相同的二進制值。
如果可以做到,請傳回任何
[i, j]
,其中
i+1 < j
,這樣一來:
-
組成第一部分;A[0], A[1], ..., A[i]
-
作為第二部分;A[i+1], A[i+2], ..., A[j-1]
-
是第三部分。A[j], A[j+1], ..., A[A.length - 1]
- 這三個部分所表示的二進制值相等。
如果無法做到,就傳回
[-1, -1]
。
注意,在考慮每個部分所表示的二進制時,應當将其看作一個整體。例如,
[1,1,0]
表示十進制中的
6
,而不會是
3
。此外,前導零也是被允許的,是以
[0,1,1]
和
[1,1]
表示相同的值。
示例 1:
輸入:[1,0,1,0,1]
輸出:[0,3]
示例 2:
輸出:[1,1,0,1,1]
輸出:[-1,-1]
提示:
-
3 <= A.length <= 30000
-
或A[i] == 0
A[i] == 1