AcWing 2058.笨拙的手指
原题链接:AcWing 2058.笨拙的手指
关键词: 枚举、位进制
奶牛贝茜正在学习如何在不同进制之间转换数字。
但是她总是犯错误,因为她无法轻易的用两个前蹄握住笔。
每当贝茜将数字转换为一个新的进制并写下结果时,她总是将其中的某一位数字写错。
例如,如果她将数字 14 转换为二进制数,那么正确的结果应为 1110,但她可能会写下 0110 或 1111。
贝茜不会额外添加或删除数字,但是可能会由于写错数字的原因,写下包含前导 0 的数字。
给定贝茜将数字 N 转换为二进制数字以及三进制数字的结果,请确定 N 的正确初始值(十进制表示)。
输入格式
第一行包含 N 的二进制表示,其中一位是错误的。
第二行包含 N 的三进制表示,其中一位是错误的。
输出格式
输出正确的 N 的值。
数据范围
0≤N≤109,且存在唯一解。
输入样例:
1010
212
输出样例:
14
样例解释
14 在二进制下的正确表示为 1110,在三进制下的正确表示为 112。
c++实现:
#include <iostream>
#include <algorithm>
#include <cstring>
#include <unordered_set>
using namespace std;// 将b进制的s转化为对应的十进制
int get(string s, int b){// 秦九韶算法int ans = 0;for(auto c : s){ans = ans * b + c - '0';}return ans;
}int main(){unordered_set<int> s;string a, b;cin >> a >> b;// 枚举a的每一位 将其变号转为十进制后存入集合中for(auto&c : a){c ^= 1;s.insert(get(a, 2));// 恢复现场c ^= 1;}// 枚举b中的每一位 变号然后和集合中的数进行比较for(auto&c : b){// 先存下这一位char t = c;for(int i = 0; i < 3; i ++ ){if(t - '0' != i){c = i + '0';int x = get(b, 3);if(s.count(x)){cout << x << endl;return 0;}}}// 恢复现场c = t;}return 0;
}
AcWing 2058.笨拙的手指相关推荐
- [AcWing] 2058. 笨拙的手指(C++实现)秦九韶算法
[AcWing] 2058. 笨拙的手指(C++实现)秦九韶算法 1. 题目 2. 读题(需要重点注意的东西) 3. 解法 4. 可能有帮助的前置习题 5. 所用到的数据结构与算法思想 6. 总结 1 ...
- acwing 2058. 笨拙的手指
题目:笨拙的手指 奶牛贝茜正在学习如何在不同进制之间转换数字. 但是她总是犯错误,因为她无法轻易的用两个前蹄握住笔. 每当贝茜将数字转换为一个新的进制并写下结果时,她总是将其中的某一位数字写错. 例如 ...
- AcWing 2058. 笨拙的手指(暴力枚举)
题目链接 https://www.acwing.com/problem/content/2060/ 思路 因为二进制和三进制有一位是错误的,那么我们直接二重循环枚举每一位,看更改后是否满足相等,如果是 ...
- 刷题日记 acwing 2058笨拙的手指 位运算的运用,迭代器的使用,秦九稍(别的进制转化为10进制)
#include<iostream> #include<unordered_set> using namespace std; int get(string a,int b)秦 ...
- AcWing 1月9日每日一题 2058. 笨拙的手指
AcWing 2058. 笨拙的手指 思路分析: 枚举的思想,因为题目中明确说明只有一位不同,所以可以把所有情况枚举出来,1e9的二进制最多不超过30位,三进制同理,因此分别进行枚举后,求出10进制的 ...
- AcWing寒假每日一题2058. 笨拙的手指
AcWing寒假每日一题2058. 笨拙的手指 题目描述 奶牛贝茜正在学习如何在不同进制之间转换数字. 但是她总是犯错误,因为她无法轻易的用两个前蹄握住笔. 每当贝茜将数字转换为一个新的进制并写下结果 ...
- AcWing寒假每日一题 2058.笨拙的手指
题目描述:2058. 笨拙的手指 - AcWing题库 奶牛贝茜正在学习如何在不同进制之间转换数字. 但是她总是犯错误,因为她无法轻易的用两个前蹄握住笔. 每当贝茜将数字转换为一个新的进制并写下结果时 ...
- 2058 笨拙的手指
2058 笨拙的手指 奶牛贝茜正在学习如何在不同进制之间转换数字. 但是她总是犯错误,因为她无法轻易的用两个前蹄握住笔. 每当贝茜将数字转换为一个新的进制并写下结果时,她总是将其中的某一位数字写错. ...
- 2022AcWing寒假算法每日一题之2058. 笨拙的手指
2022AcWing寒假算法每日一题之2058. 笨拙的手指 题目链接:AcWing2058. 笨拙的手指 思路: 1.数据范围为0-1e9,则输入的时候按照字符串输入 2.将二进制和三进制各位数上的 ...
最新文章
- Windows8 Metro开发 (04) : 保存/读取本地应用程序设置
- SAP Commerce Cloud Accelerator theme css 加载的问题和 multi step checkout
- Scrapy爬虫中的链接提取器LinkExtractor
- 学labview的都是什么人_为什么学美术的人,从来都不曾后悔?
- class属性表种类集合,以及字段详解
- 搭建Web站点和FTP站点
- i3-9100f和i5-9400f 的区别
- Android Studio 使用魅族手机调试时,不显示 Log 的解决方法
- react hooks子给父传值
- 从 Aave 到 Yearn:一文梳理 DeFi 中的「蓝筹股」
- 浅谈电话机器人与人工坐席的优劣势
- Linux shell脚本入门到实战详解(一)
- ns-allinone-3.X(simulator模拟器)简单配置
- 想学linux需要的电脑配置相关
- 迅搜中文分词简明教程
- CAN通信标准帧和扩展帧
- 恭喜!第十届“吴文俊人工智能科学技术奖”揭晓!华章多位作译者获奖
- linux 触摸屏驱动中断下半部实现-工作队列
- 电脑通过usb共享网络给手机上网
- B2B2C多用户商城运营内幕