結果
問題 | No.1800 Random XOR |
ユーザー |
![]() |
提出日時 | 2021-12-18 16:15:39 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 3 ms / 2,000 ms |
コード長 | 1,310 bytes |
コンパイル時間 | 2,187 ms |
コンパイル使用メモリ | 193,920 KB |
最終ジャッジ日時 | 2025-01-27 03:19:32 |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 14 |
ソースコード
#include<bits/stdc++.h>//using namespace std;#pragma GCC target("avx2")#pragma GCC optimize("O3")#pragma GCC optimize("unroll-loops")#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native")#define rep(i, j, n) for(ll i = ll(j); i < ll(n); i++)#define REP(i, j, n) for(ll i = ll(j); i <= ll(n); i++)#define per(i, j, n) for(ll i = ll(j); ll(n) <= i; i--)#define ALL(a) (a).begin(),(a).end()#define revALL(a) (a).rbegin(),(a).rend()#define pb push_back#define mp std::make_pair#define mtp std::make_tuple#define ln "\n"using std::endl;using std::cin;using std::cout;#define ll long longusing std::vector;using std::string;using std::upper_bound;using std::lower_bound;const ll MOD = int(1e9+7);const ll MAX = 1e6+10;const ll inf = (1ll << 60);//modpowll modpow(ll X, ll Y, ll mod){ll ret = 1;while(Y){if(Y & 1){ret *= X;ret %= mod;}X *= X;X %= mod;Y >>= 1;}return ret % mod;}//mainint main(){std::ios::sync_with_stdio(false);std::cin.tie(nullptr);std::cout.tie(nullptr);cout << std::fixed << std::setprecision(15);ll N,M; cin >> N >> M;ll ans = modpow(2,M,MOD)-1;ans *= modpow(2,MOD-2,MOD);ans %= MOD;cout << ans << ln;}