Math Problem(數論 二分 字首和)

2022-09-01 10:03:08 字數 910 閱讀 3880

已知整數 a, a^3 除 192 的餘數是 1 。求區間 [l,r] 之間滿足條件的 a 的累加和是多少?
第一行是乙個整數 t(1≤t≤10000),表示樣例的個數。

每個樣例包含兩個整數 l,r, 1≤l≤r≤10^9。

輸出描述

每行輸出乙個樣例的結果。

1

1 10

1
本題來自某大學acm訓練的題,由於我太菜只會暴力,然後我去

請教了大佬,結果是數論+二分+字首和。。首先是數學證明(a^3-1)%192==0,即 (a-1)(a^2+ a+1)%192 == 0, 即對於所有的(a-1)% 192 == 0,

(a^3-1)%192==0,恆成立,所以我們列舉192的倍數+1,字首和處理這些數的和,然後二分左右端點,由sum[r]-sum[l-1]即可

#include using namespace std;

#define ios ios::sync_with_stdio(false); cin.tie(0); cout.tie(0)

typedef long long ll;

int t;

ll sum[5300000];

ll du(ll x)

ll f1(ll a, ll l, ll r)

ll f2(ll a, ll l, ll r)

int main()

cin >> t;

while (t--)

return 0;

}

11 1 考試 數論 數論 二分

額,可以直接暴力,或二分,或者像我這麼sb 地分解質因數 因為p是質數,所以a b 1 二分即可 大佬們都用並查集,可是我不會啊 我只會線段樹的解法 複雜度 o nlog 2n 好像比並查集快一點點 哈哈 注意兩種不合法的情況 上面的兩個符合分別是交集,並集的意思 然後二分,直接模擬就好了 incl...

二分 假 數論 分數

nput 第一行包含兩個正整數n和p,表示選手的個數以及精度要求。接下來的n行,每行包含乙個0到100 閉區間 內的整數。output 輸出乙個實數,取p位有效數字,下取整。sample input 5 4 100 20 15 10 8 sample output 195.2 data constr...

數論 二分快速取餘

求12345 12345的所有約數 即因子 之和,並對其取模9901再輸出。key格式 ctf 這裡存在三個有趣的數學定理 1 整數唯一分解定理 2 約數和公式 3 同餘模公式 includeusing namespace std const int size 10000 const int mod...