結果
問題 | No.939 and or |
ユーザー |
![]() |
提出日時 | 2025-03-26 16:02:04 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 2 ms / 2,000 ms |
コード長 | 2,175 bytes |
コンパイル時間 | 1,990 ms |
コンパイル使用メモリ | 193,156 KB |
実行使用メモリ | 7,324 KB |
最終ジャッジ日時 | 2025-03-26 16:02:45 |
合計ジャッジ時間 | 3,319 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 30 |
コンパイルメッセージ
main.cpp:53:1: warning: ISO C++ forbids declaration of ‘main’ with no type [-Wreturn-type] 53 | main(){ | ^~~~
ソースコード
#include<bits/stdc++.h>using namespace std;// #pragma GCC optimize(1)// #pragma GCC optimize(2)// #pragma GCC optimize(3)// #pragma GCC optimize("Ofast")// #pragma GCC optimize("unroll-loops")// #pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,avx2,tune=native")#define int long long#define y0 Y0#define y1 Y1#define lc (now<<1)#define rc (now<<1|1)#define min(a,b) (a<b?a:b)#define max(a,b) (a>b?a:b)#define P pair<int,int>#define mkp make_pair#define x first#define y second#define modd(x) (((x)%mod+mod)%mod)#define rd read()#define lowbit(x) ((x)&(-(x)))#define abs(x) ((x)<0?-(x):(x))#define submod(x,y) (((x-=y)<0)&&(x+=mod))#define addmod(x,y) (((x+=y)>=mod)&&(x-=mod))#define addval(x,y) (x+y>=mod?x+y-mod:x+y)#define subval(x,y) (x-y<0?x-y+mod:x-y)mt19937_64 rnd(chrono::steady_clock::now().time_since_epoch().count());#define fflush() fwrite(obuf,1,O-obuf,stdout),O=obufchar buf[(1<<21)+10],*p1=buf,*p2=buf,obuf[(1<<21)+10],*O=obuf;#define getchar() (p1==p2&&(p2=(p1=buf)+fread(buf,1,1<<21,stdin),p1==p2)?EOF:*p1++)#define putchar(x) (O-obuf<(1<<21)?*O++=(x):(fwrite(obuf,1,1<<21,stdout),O=obuf,*O++=(x)))inline int read(int u=0, char c=getchar(), bool f=false){for(;!isdigit(c);c=getchar()) f|=c=='-';for(;isdigit(c);c=getchar()) u=(u<<1)+(u<<3)+(c^'0');return f?-u:u;}inline void read(string &s,char c=getchar()){for(;(c<'A'||c>'Z')&&(c<'a'||c>'z')&&(c<'0'||c>'9');c=getchar());s.clear();for(;(c>='A'&&c<='Z')||(c>='a'&&c<='z')||(c>='0'&&c<='9');c=getchar()) s.push_back(c);}inline void wt(int x){if(x<0) x=-x,putchar('-');if(x>9) wt(x/10);putchar((x%10)^'0');}inline void wt(string s){for(char c:s) putchar(c);}inline void wt(int x,char k){wt(x),putchar(k);}const int inf=~0U>>1,linf=~0ULL>>1,iinf=1e18;const int mod=998244353,g=3,gi=332748118,seed=19260817;const int N=1e6+10;int a,b,x,y;main(){//freopen(".in","r",stdin);//freopen(".out","w",stdout);a=rd,b=rd;bool flag=0;int cnt=1;for(int i=31;i>=0;i--){if((a>>i&1)&&!(b>>i&1)) cnt=0;if(!(a>>i&1)&&(b>>i&1)) cnt*=2-!flag,flag=1;}wt(cnt,'\n');return fflush(),0;}