1018 可被 5 整除的二進位制字首

2021-10-24 02:45:19 字數 895 閱讀 1194

題目描述:

給定由若干 0 和 1 組成的陣列 a。我們定義 n_i:從 a[0] 到 a[i] 的第 i 個子陣列被解釋為乙個二進位制數(從最高有效位到最低有效位)。

返回布林值列表 answer,只有當 n_i 可以被 5 整除時,答案 answer[i] 為 true,否則為 false。

示例 1:

輸入:[0,1,1]

輸出:[true,false,false]

解釋:輸入數字為 0, 01, 011;也就是十進位制中的 0, 1, 3 。只有第乙個數可以被 5 整除,因此 answer[0] 為真。

示例 2:

輸入:[1,1,1]

輸出:[false,false,false]

示例 3:

輸入:[0,1,1,1,1,1]

輸出:[true,false,false,false,true,false]

示例 4:

輸入:[1,1,1,0,1]

輸出:[false,false,false,false,false]

1 <= a.length <= 30000

a[i] 為 0 或 1

方法1:

主要思路:

(1)對陣列中的元素,逐個的加權,轉化為數字lable,為避免數字越界,則每次將轉換後的lable先對5進行求餘,若此時lable是0,則將對應位置的標識置為true即可;

class

solution

++pos;

}return res;}}

;

1018 可被 5 整除的二進位制字首

解題思路 1.可被 5 整除的數個位必然是0或5,所以,我們實際上可以不用關心,各位累加後的結果,我們關心的只是個位 2.原陣列的第i個子陣列組成的十進位制數字的計算方法是 sum 1 a i 其中sum的初始值為0,這樣計算得到的sum實際上超出了int和long型別的範圍,由於我們只關心個位的數...

1018 可被 5 整除的二進位制字首

1018.題目如下在這裡插入 片給定由若干 0 和 1 組成的陣列 a。我們定義 n i 從 a 0 到 a i 的第 i個子陣列被解釋為乙個二進位制數 從最高有效位到最低有效位 返回布林值列表 answer,只有當 n i 可以被 5 整除時,答案 answer i 為 true,否則為 fals...

1018 可被5整除的二進位制字首

給定由若干 0 和 1 組成的陣列 a。我們定義 n i 從 a 0 到 a i 的第 i 個子陣列被解釋為乙個二進位制數 從最高有效位到最低有效位 返回布林值列表 answer,只有當 n i 可以被 5 整除時,答案 answer i 為 true,否則為 false。示例輸入 0,1,1 輸出...