20181031膜你賽
1 乘
時間限制: 2s
空間限制: 256MB
1.1 題目描述
你有一個正整數 \(a\) , 有 \(q\) 次詢問, 每次給定一個正整數 \(b_i\)
, 求 \(a^{b_i}\) 的值.
由於答案可能很大, 你只需要輸出答案對 \(p\) 取模的結果。
又由於詢問可能很多, 給定一個引數 \(k\), 你只需要輸出對於所有 \(k\) 的整數倍 \(i(0 < i ≤ q)\) , 第一
次詢問到第 \(i\) 次詢問的結果的異或和.
為了防止輸入檔案過大, 每次詢問的值以以下方法生成:
設 \(b_i\) 為第 \(i\) 次詢問的值, 給定 \(b0, l, m, c,i > 0\)
1.2 輸入格式
第一行四個正整數 \(a, p, q, k\).
第二行四個正整數 \(b_0, l, m, c\).
1.3 輸出格式
輸出 \(⌊\frac{q}{k}⌋\) 行, 第 i 行表示第一次到第 \(i ∗ k\) 次詢問結果的異或和. 你不需要對異或和進行取模.
1.4 樣例資料
1.4.1 樣例 1 輸入
4 3 9 6
5 8 7 7
1.4.2 樣例 1 輸出
0
1.4.3 樣例 1 解釋
b1 − b6 分別為 2, 5, 2, 5, 2, 5, 答案都是 1, 異或和為 0.
1.5 資料範圍
對於前 10% 的資料, \(q = 0\);
對於前 50% 的資料, \(q ≤ 10^5\);
對於另外 20% 的資料, \(p = 999983\);
對於 100% 的資料, \(a ≤ 10^9, q ≤ 10^7, p ≤ 10^9, ⌊\frac{q}{k}⌋ ≤ 1000, b_0, l ≤ 10^{12}, m, c ≤ 10^6\).
分析
2 樹
時間限制: 1s
空間限制: 256MB
2.1 題目描述
你有一個長度為 \(n\) 的序列, 第 \(i\) 個數是 \(a_i\) , 下標從 \(1\) 開始. 有 \(q\) 次操作, 可能為:
1 l r k
, 表示 \(∀x ∈ [l, r]\)
2 l r
, 表示詢問連續子序列 \([l, r]\) 中所有元素的和.3 l r
, 表示詢問: 如果在 \([l, r]\) 之間均勻隨機生成兩個整數 \(x, y,(ax + ay)^2\) 的期望值. 你只需要輸出答案與 \((r − l + 1)^2\) 的乘積對 \(998244353\) 取模的值. 可以證明答案一定是整數.
2.2 輸入格式
第一行一個整數 \(n\) 表示序列長度, 接下來一行 \(n\) 個整數描述這個序列.
第三行一個整數 \(q\) 表示操作次數, 接下來 \(q\) 行每行一次操作, 格式同題目描述.
2.3 輸出格式
輸出等同於操作 2, 3 次數之和的行數, 每行一個非負整數表示對應詢問的答案. 注意操作 2 的答案不需要進行取模.
2.4 樣例資料
2.4.1 樣例 1 輸入
5
8 4 3 5 6
5
2 3 5
3 1 2
1 2 4 3
2 3 5
3 1 2
2.4.2 樣例 1 輸出
14
608
10
384
2.4.3 樣例 1 解釋
第三次操作後, 序列變為 \([8, 0, 3, 1, 6]\) .
2.5 資料範圍
對於前 30% 的資料, \(n, q ≤ 100\);
對於另 20% 的資料, 沒有操作 1;
對於另 20% 的資料, 沒有操作 3;
對於 100% 的資料, \(n, q ≤ 10^5, ai ≤ 10^9, k ≤ 2^30, 1 ≤ l ≤ r ≤ n\) .