計算數列 求貢獻

2021-09-26 02:44:41 字數 989 閱讀 6012

設表示乙個交替兩個數字 f(a​1​​a​2​​...a​p−1​​a​p​​,b​1​​b​2​​...b​q−1​​b​q​​) 的函式,其中 a​1​​...a​p​​ 和 b​1​​...b​q​​ 是以十進位制表示法寫入的兩個整數的數字,不帶前導零。

換句話說,函式 f(x,y) 通過將數字 x 和 y 從最低位數寫入新的數字,從數字 y 開始,交替地混洗數字 x 和 y 。

該函式的結果也是從右到左構建的(即從較低位的數字到較高位的數字)。

例如:f(1111,2222)=12121212

對於乙個給定的數列 a​1​​,a​2​​,...,a​n​​,請計算 ∑​i=1​n​​∑​j=1​n​​f(a​i​​,a​j​​) mod 998244353 的值。

多組輸入

輸入的第一行包含乙個整數 n(1≤n≤10​5​​),代表陣列中的元素數。

輸入的第二行包含 n 個整數 a​1​​,a​2​​,...,a​n​​,(1≤a​i​​≤10​9​​) ,代表陣列中的元素。

保證陣列中的元素是等長的。

列印答案對 998244353 取模後的結果

3

12 33 45

26730
#include #include #include #include #include #include #include #include using namespace std;

//int x[200010];

int main()

//printf("***%lld***\n",sum);

sum = (sum * t) % 998244353;

sa = (sa + sum)%998244353;

//printf("!!!%lld!!!\n",sa);

}printf("%lld\n",sa);

}return 0;

}

計算數列和2 1,3 2,5 3,8 5

有一分數序列 2 1,3 2,5 3,8 5,13 8,21 13,計算這個數列的前n項和。注意 c語言中整數 整數的結果為整數 需要用 float 強制轉換為實型或乘以1.0後進行計算。輸入乙個正整數n。輸出數列的前n項和 保留兩位小數 輸出格式可為 printf s 2f n 1015 20s ...

4 2 2 計算資料

4.2.2 計算資料 在這個應用程式的第乙個版本中,我們將只列印標籤,以及圖表中每一項所佔比例 百分比 要計算百分比,就需要知道列表中所有專案數值總和,這個值用清單 4.4 中的函式 calculatesum 來計算。清單 4.4 計算列表中的數值和 f interactive let rec ca...

1665 計算數字

中文english 給出乙個十進位制數num,現在你需要把它轉成二進位制數,並返回1的個數和位置。樣例例1 輸入 10 輸出 2,1,3 解釋 10轉成2進製為1010,總共有2個1,所以ouptput陣列第乙個是2。然後1的位置是第1個和第3個,所以後續兩個數為1,3.例2 輸入 7 輸出 3,1...