记录编号 606453 评测结果 AAAAAAAAAAAAAAAAAAAA
题目名称 [CSP 2019S]格雷码 最终得分 100
用户昵称 Gravatarllbc1234 是否通过 通过
代码语言 C++ 运行时间 0.056 s
提交时间 2025-09-25 21:01:04 内存使用 3.66 MiB
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
//bool a[50000000]={0};
long long cnt=0;
__int128 r(){
	__int128 x = 0,f = 1;
	char ch = getchar();
	while(ch < '0' || ch > '9'){
		if(ch == '-'){
			f = -f;
		}
		ch = getchar();
	}
	while(ch >= '0' && ch <= '9'){
		x = x * 10 + ch - '0'; 
		ch = getchar();
	}
	return x * f;
}
int main(){
    freopen("2019code.in","r",stdin);
    freopen("2019code.out","w",stdout);
    __int128 n,k;
    n=r();
    k=r();
    __int128 r=1;
    for(int i=0;i<n-1;i++){
        r*=2;
    }
    r-=1;
    r*=2;
    r+=1;
    __int128 l=0,mid;
    while(l<r){    
        mid=(l+r+1)/2;
//        cout<<l<<' '<<mid<<' '<<r<<' '<<k<<endl;
        if(k<mid){
            r=mid-1;
            cout<<0;
        }else{
            k=r-k+l;
            r=mid-1;
            cout<<1;
        }
//        cout<<l<<' '<<mid<<' '<<r<<' '<<a[cnt-1]<<' '<<k<<endl;
    }
//    for(int i=0;i<cnt;i++){
//        cout<<a[i];
//    }
     //cout<<' '<<cnt;  
}