k序列(暴力取模)

2022-08-23 17:33:13 字數 834 閱讀 9273

給乙個陣列 a,長度為 n,若某個子串行中的和為 k 的倍數,那麼這個序列被稱為「k 序列」。現在要你 對陣列 a 求出最長的子串行的長度,滿足這個序列是 k 序列。 

第一行為兩個整數 n, k, 以空格分隔,第二行為 n 個整數,表示 a[1] ∼ a[n],1 ≤ n ≤ 10
5

, 1 ≤ a[i] ≤ 10
9

, 1 ≤ nk ≤ 10
7

輸出乙個整數表示最長子序列的長度 m

示例1

7 5

10 3 4 2 2 9 8

6

思路很簡單暴力列舉,注意取模即可

#include using

namespace

std;

int resolution(long

long

int *p, int n,int

k)

if (sum%k == 0

)

for (int i = n-1; i > 0; i--)

if (sum%k == 0

)

return

i;

for (int j = 0; j < n-i; j++)

} return

0;

} int

main()

cout

<< resolution(p, n, k) <}

return

0;

}

k序列(暴力取模)

給乙個陣列 a,長度為 n,若某個子串行中的和為 k 的倍數,那麼這個序列被稱為 k 序列 現在要你 對陣列 a 求出最長的子串行的長度,滿足這個序列是 k 序列。輸入描述 第一行為兩個整數 n,k,以空格分隔,第二行為 n 個整數,表示 a 1 a n 1 n 10 5,1 a i 10 9,1 ...

K好數 不取模

題目 如果乙個自然數n的k進製表示中任意的相鄰的兩位都不是相鄰的數字,那麼我們就說這個數是k好數。求l位k進製數中k好數的數目。例如k 4,l 2的時候,所有k好數為11 13 20 22 30 31 33 共7個。給定k l,求l位k好數的數目。輸入格式 從檔案讀入資料,第一行為k 其中k 16,...

取模與取餘

通常情況下取模運算 mod 和求餘 rem 運算被混為一談,因為在大多數的程式語言裡,都用 符號表示取模或者求餘運算。在這裡要提醒大家要十分注意當前環境下 運算子的具體意義,因為在有負數存在的情況下,兩者的結果是不一樣的。對於整型數a,b來說,取模運算或者求餘運算的方法都是 1.求 整數商 c a ...