牛客小白月賽12 B 華華教月月做數學

2022-09-15 16:03:12 字數 1100 閱讀 3789

點選做題**鏈結

題目描述

找到了心儀的小姐姐月月後,華華很高興的和她聊著天。然而月月的作業很多,不能繼續陪華華聊天了。華華為了盡快和月月繼續聊天,就提出幫她做一部分作業。

月月的其中一項作業是:給定正整數a、b、p,求abm

odpa

bmod

p的值。華華覺得這實在是毫無意義,所以決定寫乙個程式來做。但是華華並不會寫程式,所以這個任務就交給你了。

因為月月的作業很多,所以有t組詢問。

輸入描述:

第一行乙個正整數t表示測試資料組數。

接下來t行,每行三個正整數a、b、p,含義如上文。

輸出描述:

輸出t行,每行乙個非負整數表示答案。

示例1

輸入

22 5 10

57284938291657

備註:1≤

t≤10

3,1≤

a,b,

p≤10

181≤t

≤103

,1≤a

,b,p

≤101

8快速冪和快速乘的模板題,時間複雜度o(t

log2

a)o(

tlog

2a)。

開始一看以為只要用快速冪就可以,結果連示例的第二組都沒有通過,輸出為負數。所以發現原來是乘爆了。那麼就把快速冪中有乘的地方用快速乘來代替,這樣防爆。

#include

using

namespace std;

typedef

unsigned

long

long ll;

ll ksc

(ll a,ll b,ll mod)

//快速乘

return ans;

}ll ksm

(ll a,ll b,ll mod)

//快速冪

return ans;

}int

main()

}

牛客小白月賽12 華華給月月出題

題意 給乙個n,求1到n i n的異或和。n 1.3e7,顯然只能o n 因為i n是積性函式,所以可以線性篩o n 求出1到n的n次方,然而比賽的時候我寫了個假的線性篩。include using namespace std const int mod 1e9 7 int n bool ispri...

牛客 華華教月月做數學 (快速冪)

華華教月月做數學 這道題屬於快速冪型別的題,唯一棘手的是用常規的快速冪會爆long long,這時候對於沒有大數的c 而言,要麼用手寫大數函式來做,要麼就在快速冪的基礎上,為防止溢位,將快速冪中的乘法拆成加法求餘,類似快速冪的快速乘。include using namespace std typed...

牛客練習賽12 B 迷宮

牛客練習賽12 b 迷宮 這道題比以前的迷宮問題多了一道門 d 必須有 k 才能過門 以前我們用bfs搜尋來解決這種問題,每個 只能經過一次 而此時每個 能夠經過兩次,分別為有 k 和無 k include include include include include include define...