1430.txt
来自「北大ACM题目例程 详细的解答过程 程序实现 算法分析」· 文本 代码 · 共 59 行
TXT
59 行
#include"iostream.h"
const long big=1024*1024*1024;
long b;
long n,m;
char a[16][34]={
". . . . . . . . . . . . . . . 1",
". . . . . . . . . . . . . 1 1 .",
". . . . . . . . . . . 1 1 1 . .",
". . . . . . . . . 1 1 . 1 . . .",
". . . . . . . 1 1 1 . 1 . . . .",
". . . . . 1 1 . 1 1 1 . . . . .",
". . . 1 1 1 . . 1 1 . . . . . .",
". 1 1 . 1 . . . 1 . . . . . . .",
"1 1 . 1 . . . 1 . . . . . . . .",
"1 1 1 . . 1 1 . . . . . . . . .",
"1 1 . 1 1 1 . . . . . . . . . .",
"1 1 1 . 1 . . . . . . . . . . .",
"1 1 . 1 . . . . . . . . . . . .",
"1 1 1 . . . . . . . . . . . . .",
"1 1 . . . . . . . . . . . . . .",
"1 . . . . . . . . . . . . . . ."};
int find()
{if(m>n)return 0;
b=big;
while(1)
{
if(m<=16&&n<=m/2+8){if(a[16-n][(m-1)*2]=='1')return 1;else return 0;}
while(b/2>=m&&n<=m/2+b/4)b/=2;
if(m>b/2){m-=b/2;n-=b/4;continue;}
if(n>=b/4+m){n-=b/4;continue;}
return 0;
}
return 0;
}
int main()
{int t;
cin>>t;
while(t--)
{cin>>n>>m;
cout<<find()<<endl;
}
return 0;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?