社区讨论
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 条回复,欢迎继续交流。
正在加载回复...