当前位置: 首页 > news >正文

【P5657 [CSP-S2019] 格雷码】

P5657 [CSP-S2019] 格雷码

暴力50分

#include<bits/stdc++.h>
#define IOS ios::sync_with_stdio(false),cin.tie(0),cout.tie(0) 
#define int long long
#define PII pair<int,int> 
#define pb push_back
using namespace std;
const int N = 1e6+5;
int n,k;
signed main()
{IOS;cin>>n>>k;vector<string> v;v.pb("0");v.pb("1");for(int j=1;j<=n-1;j++) {vector<string> vt;for(int i=0;i<(int)v.size();i++){vt.pb("0"+v[i]);}for(int i=(int)v.size()-1;i>=0;i--){vt.pb("1"+v[i]);}v = vt;}cout<<v[k];
}

正解

#include<bits/stdc++.h>
#define IOS ios::sync_with_stdio(false),cin.tie(0),cout.tie(0) 
#define int long long
#define PII pair<int,int> 
#define pb push_back
using namespace std;
const int N = 1e6+5;
unsigned long long n,k;
signed main()
{IOS;cin>>n>>k;__int128 sum = (__int128)pow(2,n);int pre = -1;while(1){if(pre==-1){if(k<=sum/2-1){cout<<0;pre = -1;}else{cout<<1;pre = 1;k -= sum/2;}	}else{if(k<=sum/2-1)//k下标从1开始 {cout<<1;pre = -1;}else{cout<<0;pre = 1;k -= sum/2;}}sum /= 2;if(sum==1) break;}
}

http://www.mrgr.cn/news/41100.html

相关文章:

  • 电影推荐系统
  • 开放式耳机哪个品牌好?值得选购的开放式蓝牙耳机推荐
  • 校园健康数据管理:SpringBoot技术优势
  • Ref-NeuS参数记录
  • ThreadLocal原理解析及面试
  • 大语言模型入门(二)——提示词
  • 金融领域的人工智能——Palmyra-Fin 如何重新定义市场分析
  • 【CViT】Deepfake Video Detection Using Convolutional Vision Transformer
  • 互联网大厂软件开发背后的秘密:为何瀑布和 Scrum 模式备受青睐?
  • 【linux进程】进程优先级命令行参数环境变量
  • 【mmengine】优化器封装(OptimWrapper)(入门)优化器封装 vs 优化器
  • 试用模方软件时,在编辑模型视图下操作较卡,模型分辨率是3厘米,重建时设置平面划分的瓦片大小是450米,划分瓦片的时候大小设置多少比较合适?
  • 如何使用ssm实现基于JSP的高校听课评价系统
  • WPF下使用FreeRedis操作RedisStream实现简单的消息队列
  • 适用于 Windows 10 的最佳 PDF 编辑器列表,可帮助更改 PDF 文件。
  • ConcurrentLinkedQueue的核心方法有哪些?
  • 记一次炉石传说记牌器 Crash 排查经历
  • 【C++前缀和 状态压缩】1371. 每个元音包含偶数次的最长子字符串|2040
  • 解决银河麒麟服务器操作系统中`/etc/bashrc`环境变量不生效的问题
  • Python机器学习基础前置库学习:NumPy、Pandas、Matplotlib、Seaborn