牛客寒假5-J.炫酷數學
阿新 • • 發佈:2019-02-06
while 快速 def include pac brush std org cpp
鏈接:https://ac.nowcoder.com/acm/contest/331/J
題意:
小希最近想知道一個東西,就是A+B=A|B(其中|為按位或)的二元組有多少個。
當然,直接做這個式子對小希來說太難了,所以小希改變了一些條件,她僅想知道其中A,B<NA,B<N的情況,其中N為2的冪次。
當然,(A=1,B=0)和(A=0,B=1)被認為是不同的二元組。
思路:
對於每個二進制,0-0,1-0,0-1,即可。
快速冪。
代碼:
#include <bits/stdc++.h> using namespace std; typedef long long LL; const int MOD = 998244353; LL Quick_Mi(int m) { LL x = 3; LL res = 1; while (m > 0) { if (m&1) res = res * x % MOD; x = x * x % MOD; m >>= 1; } return res; } int main() { int m; cin >> m; cout << Quick_Mi(m) << endl; return 0; }
牛客寒假5-J.炫酷數學