AcWing 1月9日每日一题 2058. 笨拙的手指
AcWing 2058. 笨拙的手指
思路分析:
枚举的思想,因为题目中明确说明只有一位不同,所以可以把所有情况枚举出来,1e9的二进制最多不超过30位,三进制同理,因此分别进行枚举后,求出10进制的集合,集合的交集即为所求答案。
AC代码:
#include <bits/stdc++.h>using namespace std;// b进制 转换为 10进制
int get(string s, int b) {// 秦九韶算法int res = 0;for(int i = 0; i < s.size(); i++)res = res * b + (s[i] - '0');return res;
}int main() {string a, b;cin >> a >> b;unordered_set<int> s;for(auto& c: a) {c ^= 1; // 字符 0变1 或者 1变0s.insert(get(a, 2));c ^= 1; // 恢复现场}for(auto& c: b) {char t = c;for(int i = 0; i < 3; i++)if(i + '0' != t) {c = i + '0';int x = get(b, 3);if(s.count(x)) {cout << x << endl;return 0;}}c = t; // 恢复现场}
}
几个值得学习的地方:
1. b进制 转换为 10进制
秦九韶算法
int get(string s, int b) {// 秦九韶算法int res = 0;for(int i = 0; i < s.size(); i++)res = res * b + (s[i] - '0');return res;
}
2. 字符0 与 字符1 相互转换 只需进行异或操作
c ^= 1;
3. 从一个集合中查找一个东西,要用哈希表,哈希表查找的时间复杂度是O(1)
AcWing 1月9日每日一题 2058. 笨拙的手指相关推荐
- AcWing寒假每日一题2058. 笨拙的手指
AcWing寒假每日一题2058. 笨拙的手指 题目描述 奶牛贝茜正在学习如何在不同进制之间转换数字. 但是她总是犯错误,因为她无法轻易的用两个前蹄握住笔. 每当贝茜将数字转换为一个新的进制并写下结果 ...
- AcWing寒假每日一题 2058.笨拙的手指
题目描述:2058. 笨拙的手指 - AcWing题库 奶牛贝茜正在学习如何在不同进制之间转换数字. 但是她总是犯错误,因为她无法轻易的用两个前蹄握住笔. 每当贝茜将数字转换为一个新的进制并写下结果时 ...
- 王者服务器维护结束2020331,S19荣耀进阶战令的星元部件是哪一位英雄的 王者荣耀2020年3月31日每日一题答案 - 找游戏手游网...
版本:v1.52.1.37 类型:MOBA跑酷大小:1.98 GB评分:9.2 标签: moba 腾讯游戏 塔防 竞技游戏 角色扮演 联机对战 立即下载 S19荣耀进阶战令的星元部件是哪一位英雄的?这 ...
- 12月29日每日一题
给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标. 你可以假设每种输入只会对应一个答案.但是,数组中同 ...
- 每日一题-Acwing2058笨拙的手指-位运算-枚举
原题链接 给个二进制和三进制数,他们都是由十进制数变换过来的,但是两个里面都有一位是不对的,要找到原来的十进制数 枚举十进制数会超时,反过来想,枚举二进制数和三进制数修改一位后对应的十进制数,找到重合 ...
- 寒假每日一题 1 : 笨拙的手指 java
1 : 笨拙的手指 枚举 题目 视频讲解 奶牛贝茜正在学习如何在不同进制之间转换数字. 但是她总是犯错误,因为她无法轻易的用两个前蹄握住笔. 每当贝茜将数字转换为一个新的进制并写下结果时,她总是将其中 ...
- AcWing《蓝桥杯集训·每日一题》—— 3777 砖块
AcWing<蓝桥杯集训·每日一题>-- 3777. 砖块 文章目录 AcWing<蓝桥杯集训·每日一题>-- 3777. 砖块 一.题目 二.解题思路 三.解题思路 本次博客 ...
- leetcode.cn 2022年11月4日 打卡题 754. 到达终点数字【一元二次方程解法,时间复杂度O(1)】
leetcode 2022年11月4日 打卡题 754. 到达终点数字 写在前面 首先感谢 @子不语 大佬发布的一元二次方程代码实现的启发.题解链接:子不语-754. 到达终点数字 本文侧重梳 ...
- 2022AcWing寒假算法每日一题之2058. 笨拙的手指
2022AcWing寒假算法每日一题之2058. 笨拙的手指 题目链接:AcWing2058. 笨拙的手指 思路: 1.数据范围为0-1e9,则输入的时候按照字符串输入 2.将二进制和三进制各位数上的 ...
最新文章
- java case switch,Java中Switch Case的替代方案
- 《用Python进行自然语言处理》第3章 加工原料文本
- linux移走一年前的文件,Shell脚本实现删除一年前文件功能分享
- 压缩,解压文件|*.tar.gz/.tar.bz2 文件
- Leetcode 8. 字符串转换整数 (atoi) (每日一题 20210615)
- Python学习笔记9—文件
- .NET Core 3.0 稳定版发布
- 求生之路2联机服务器没有响应,求生之路2联机卡,为什么求生之路2联机进不去...
- java byte to integer_Java中的Byte转为无符号的Integer
- fianl属性 java_Java反射如何有效的修改final属性值详解
- 一步一步创建ASP.NET MVC5程序[Repository+Autofac+Automapper+SqlSugar](十一)
- SpringAOP基础以及四种实现方式
- 蓝桥杯题目---蓝桥骑士(寻找逐渐递增的子序列 最多个数)
- php解决商品超卖,商品超卖问题,你用PHP如何解决?
- 函数发生器与计算机电路,第29讲 信号发生器与变换电路
- python里的英文歌叫什么_Python告诉你:从《入海》到《消愁》毛不易的歌里都在唱些什么?...
- 好设计如何诞生:关于好设计的100件事
- HDU 5238 线段树+数论
- happyCode(11start) 权限控制 shiro 密码MD5安全加密,密码盐,系统用户认证
- 游承超:手机防爆膜可以降低手机的压力(15P)
热门文章
- mysql数据库 去除回车符,换行符,和空格
- 技术思维VS管理思维
- 2021-2022-1 ACM集训队每周程序设计竞赛(5) - 问题 C: 剪切 - 题解
- 《Python数据分析与挖掘实战》学习笔记——电力漏窃电用户自动识别
- html5 机械动画制作软件,KoolShow(HTML5动画制作助手)V2.4.3 正式版
- java编写自定义异常类,统一异常处理
- html5怎么设置字母联想,联想bios高级模式
- 连接请求被计算机拒绝访问,Windows 10共享打印机解决方案被拒绝访问
- python实现查询qq是否在线
- 【Java进阶营】一个资深Java架构师告诉你我们是如何将一个项目做烂的