95分,请问哪里爆了,估计是s,最朴素的方法了..
查看原帖
95分,请问哪里爆了,估计是s,最朴素的方法了..
311830
Lhz1313楼主2020/7/14 23:53
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<algorithm>
 int n;
unsigned long long int k;
void digui(int N,unsigned  long long int K)
{
	int i;unsigned long long int s=1;
	if(N==1)
	{
		if(K==1)
		printf("0");
		else
		printf("1");
	}
	else
	{
### 		 for(i=1;i<=N-1;i++)
### 		 s*=2;
		if(K>s)
		{
			printf("1");
			digui(N-1,2*s-K+1);
		}
		else
		{
			printf("0");
			digui(N-1,K);
		}
		
	}
}
int main()
{
scanf("%d%llu",&n,&k);
digui(n,k+1);
 } 
2020/7/14 23:53
加载中...