結果
問題 | No.2393 Bit Grid Connected Component |
ユーザー | uip-kleh |
提出日時 | 2023-07-31 16:14:36 |
言語 | C++14 (gcc 12.3.0 + boost 1.83.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 2,172 bytes |
コンパイル時間 | 1,608 ms |
コンパイル使用メモリ | 175,544 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2024-10-10 09:32:24 |
合計ジャッジ時間 | 3,766 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 2 ms
6,816 KB |
testcase_01 | AC | 2 ms
6,820 KB |
testcase_02 | AC | 1 ms
6,816 KB |
testcase_03 | AC | 2 ms
6,816 KB |
testcase_04 | AC | 2 ms
6,820 KB |
testcase_05 | AC | 2 ms
6,820 KB |
testcase_06 | AC | 2 ms
6,816 KB |
testcase_07 | AC | 2 ms
6,820 KB |
testcase_08 | AC | 1 ms
6,816 KB |
testcase_09 | AC | 14 ms
6,820 KB |
testcase_10 | WA | - |
testcase_11 | WA | - |
testcase_12 | WA | - |
testcase_13 | WA | - |
testcase_14 | AC | 10 ms
6,820 KB |
testcase_15 | AC | 14 ms
6,816 KB |
testcase_16 | WA | - |
testcase_17 | WA | - |
testcase_18 | WA | - |
testcase_19 | WA | - |
ソースコード
#include<bits/stdc++.h>#define rep(i, n) for(ll i = 0; i < ll(n); i++)#define nrep(i, n) for(ll i = 1; i < ll(n + 1); i++)#define rrep(i, n) for(ll i = ll(n) - 1; i >= 0; i--)#define all(x) (x).begin(), (x).end()#define SIZE 2e5#define INF 2e18constexpr long long MOD = 1e9 + 7;using namespace std;typedef long long ll;typedef vector<int> iv;typedef vector<ll> lv;typedef vector<bool> bv;typedef pair<ll, ll> ip;typedef vector<ip> pv;typedef vector<iv> ivv;typedef set<int> ist;typedef set<ll> lst;typedef map<int, int> imp;typedef map<ll, ll> lmp;ll gcd(ll a, ll b) {return b ? gcd(b, a % b) : a;}ll lcm(ll a, ll b) {return a / gcd(a, b) * b;}ll digsum(ll n) {ll res = 0;while (n > 0) {res += n % 10;n /= 10;}return res;}ll pow(ll x, ll n) {ll ans = 1;while (n) {if (n % 2) ans *= x;x *= x;n >>= 1;}return ans;}map<ll, ll> numeric_component(ll N) {map<ll, ll> res;for (ll i = 2; i * i <= N; i++) {if (N % i != 0) continue;while (N % i == 0) {res[i]++;N /= i;}}if (N != 1) res[N]++;return res;}iv dx = {-1, 0, 1, 0};iv dy = {0, -1, 0, 1};struct edge {int from, to, length;};void print(iv &a) {for (auto v : a) cout << v << ' ';cout << endl;}bool isblack(int x, int y) {return x & (1 << y);}struct pair_hash{template <class T1, class T2>std::size_t operator () (std::pair<T1, T2> const &pair) const{std::size_t h1 = std::hash<T1>()(pair.first);std::size_t h2 = std::hash<T2>()(pair.second);return h1 ^ h2;}};int main() {int T; cin >> T;// cout << isblack(2, 0) << endl;while(T--) {int x, y; cin >> x >> y;if(!isblack(x, y)){cout << 0 << endl;continue;}while(isblack(x+1, y)){x++;}while(isblack(x, y+1)){y++;}ll ans = 0;while(isblack(x, y)){ans += 1 << y;y--;}cout << ans << endl;}}