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

天梯赛-前世档案 二进制的巧妙使用

看到题目的这个图片,我们就想到了二进制表示,用y当0,n当1,计算出相应的二进制后还要+1才是答案,这个图片神似哈夫曼编码树

注意因为是从高位向低位读的,所以要ans += pow(2,n - 1 - i);


int n,m;
string s;
void solve()
{
	cin >> n >> m;
	for (int i = 1;i <= m;i ++)
	{
		cin >> s;
		LL ans = 0;
		for (int i = 0;i < n;i ++)
			if (s[i] == 'n') ans += pow(2,n - 1 - i);
		
		cout << ans + 1 << endl;
	}
}







http://www.kler.cn/a/586485.html

相关文章:

  • Qt常用控件之表单布局QFormLayout
  • 测试开发 - 正浩创新 - 一面面经(已OC)
  • 场景题:一个存储IP地址的100G 的文件, 找出现次数最多的 IP ?
  • 嵌入式学习L6网络编程D3TCP
  • Sidekick:你的 macOS 本地 AI 助手,畅享智能对话!
  • 0011__Apache Spark
  • 帮助和配置文件
  • DataWhale 大语言模型 - Transformer模型介绍
  • MindGYM:一个用于增强视觉-语言模型推理能力的合成数据集框架,通过生成自挑战问题来提升模型的多跳推理能力。
  • Redis分布式锁深度剖析:从原理到Redisson实战,破解脑裂与高并发锁难题
  • Android 打包module为jar和aar包 基础
  • 从网络通信探究分布式通信的原理
  • 【零基础入门unity游戏开发——进阶篇】Marhf和Math的使用
  • 【每日学点HarmonyOS Next知识】tab对齐、相对布局、自定义弹窗全屏、动画集合、回到桌面
  • HarmonyOS第21天:解锁分布式技术,开启跨设备协同新体验
  • 前端开发:混合技术栈的应用
  • 用SpringBoot做一个web小案例配置拦截器判断登录状态
  • 侯捷 C++ 课程学习笔记:进阶语法之lambda表达式(二)
  • Webpack 知识点整理
  • 缓存id路由页面返回,历史路由栈