社区讨论

55分题目,不知道问题

P5657[CSP-S 2019] 格雷码参与者 3已保存回复 7

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
7 条
当前快照
1 份
快照标识符
@m2kia9dv
此快照首次捕获于
2024/10/22 21:53
去年
此快照最后确认于
2025/11/04 16:29
4 个月前
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
void outans(long long int i,long long int n)            //i 获取项数   n 获取位数
{
	if(i<(1<<n))     cout<<0;
	else
		cout<<(((i-(1<<n))/(1<<(n+1))%2+1)&1);
	return;
}
void mainprogram()
{
	long long int n,k;
	cin>>n>>k;   //共 n 位     第 k 个
	for(int cn=n-1;cn>=0;cn--)
	{      //cn  要获取的位数
		outans(k,cn);
	}
	return;
}
int main()
{
	mainprogram();
	cout<<endl;
	return 0;
}

回复

7 条回复,欢迎继续交流。

正在加载回复...