C++学习之路 | PTA乙级—— 1074 宇宙无敌加法器 (20 分)(精简)

1074 宇宙无敌加法器 (20 分)
地球人习惯使用十进制数,并且默认一个数字的每一位都是十进制的。而在 PAT 星人开挂的世界里,每个数字的每一位都是不同进制的,这种神奇的数字称为“PAT数”。每个 PAT 星人都必须熟记各位数字的进制表,例如“……0527”就表示最低位是 7 进制数、第 2 位是 2 进制数、第 3 位是 5 进制数、第 4 位是 10 进制数,等等。每一位的进制 d 或者是 0(表示十进制)、或者是 [2,9] 区间内的整数。理论上这个进制表应该包含无穷多位数字,但从实际应用出发,PAT 星人通常只需要记住前 20 位就够用了,以后各位默认为 10 进制。
在这样的数字系统中,即使是简单的加法运算也变得不简单。例如对应进制表“0527”,该如何计算“6203 + 415”呢?我们得首先计算最低位:3 + 5 = 8;因为最低位是 7 进制的,所以我们得到 1 和 1 个进位。第 2 位是:0 + 1 + 1(进位)= 2;因为此位是 2 进制的,所以我们得到 0 和 1 个进位。第 3 位是:2 + 4 + 1(进位)= 7;因为此位是 5 进制的,所以我们得到 2 和 1 个进位。第 4 位是:6 + 1(进位)= 7;因为此位是 10 进制的,所以我们就得到 7。最后我们得到:6203 + 415 = 7201。
输入格式:

输入首先在第一行给出一个 N 位的进制表(0 < N ≤ 20),以回车结束。 随后两行,每行给出一个不超过 N 位的非负的 PAT 数。
输出格式:

在一行中输出两个 PAT 数之和。
输入样例:

30527
06203
415
输出样例:

7201

#include<iostream>
#include<string>
#include<vector>
#include<algorithm>
using namespace std;
int main()
{string str, str1, str2;cin >> str >> str1 >> str2;reverse(str.begin(), str.end());reverse(str1.begin(), str1.end());reverse(str2.begin(), str2.end());vector<int>str3;if (str2.size() > str1.size())swap(str1, str2);str2.append(str1.size() - str2.size(), '0');//cout << str2 <<" "<< str1;if (str1 == str2){cout << '0';return 0;}int ans = 0;for (int i = 0; i < str1.size(); i++){int a = str1[i] - '0';int b = str2[i] - '0';int c = str[i] - '0';if (c == 0){c += 10;}if (a + b + ans >= c){str3.insert(str3.begin(), 1, ((a + b + ans) - c));ans = 1;}else{str3.insert(str3.begin(), 1, a + b + ans);ans = 0;}}int flag = 0;if (ans == 1)str3.insert(str3.begin(), 1, 1);for (int i = 0; i < str3.size(); i++){if (str3[i] != 0)flag = 1;if (flag == 1)cout << str3[i];}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/496783.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java并发编程实战~final

变量生而不变&#xff0c;允许优化&#xff0c;JDK1.5 pre 避免&#xff0c;逸出 final int x; // 错误的构造函数 public FinalFieldExample(){x 3;// 此处就是将this逸出global.obj this; }

华为鸿蒙麒麟玉兔_华为P50除了麒麟9000,还预装鸿蒙系统,比iPhone12值得买

2020年已经临近尾声&#xff0c;各大手机厂商的旗舰机均悉数亮相&#xff0c;消费者的目光也开始逐渐转向2021年的开年旗舰上。而在各大手机厂商的第一批开年旗舰中&#xff0c;华为P系列的新品无疑是最受关注的一款。这主要是因为华为目前仍处于美方制裁下&#xff0c;芯片危机…

2018年智能化发展趋势:语音交互全球开战、AI终端趋势显现

来源&#xff1a;雪球网 作者&#xff1a;西木财经美国知名研究机构CB Insights近日发布重磅报告《2018年必看的人工智能热门趋势》&#xff08;Top AI Trends To Watch In 2018&#xff09;&#xff0c;报告对AI行业发展现状进行了深入研究剖析&#xff0c;并给出了2018年AI…

C++ 对象的内存布局

来源&#xff1a;http://blog.csdn.net/haoel/article/details/3081328 前言 07年12月&#xff0c;我写了一篇《C虚函数表解析》的文章&#xff0c;引起了大家的兴趣。有很多朋友对我的文章留了言&#xff0c;有鼓励我的&#xff0c;有批评我的&#xff0c;还有很多问问题的。…

C++学习之路 | PTA乙级—— 1075 链表元素分类 (25 分)(精简)

1075 链表元素分类 (25 分) 给定一个单链表&#xff0c;请编写程序将链表元素进行分类排列&#xff0c;使得所有负值元素都排在非负值元素的前面&#xff0c;而 [0, K] 区间内的元素都排在大于 K 的元素前面。但每一类内部元素的顺序是不能改变的。例如&#xff1a;给定链表为 …

Java并发编程实战~Happens-Before 规则

Happens-Before 规则 前面一个操作的结果对后续操作是可见的 所以比较正式的说法是&#xff1a; Happens-Before 约束了编译器的优化行为&#xff0c;虽允许编译器优化&#xff0c;但是要求编译器优化后一定遵守Happens-Before 规则。 程序的顺序性规则 这条规则是指在一个线…

VB.NET 中的 As New 以及型別指定

常有人以為 VB.NET 程式的執行效能不如 C#&#xff0c;但根據 msdn 的說法&#xff0c;VB.NET 和 C# 都是編譯成 MSIL 中繼語言&#xff0c;因此基本上以二者所寫出來的應用程式也具有相同的效能。最常導致二者在 web 應用程式中&#xff0c;執行效能差異的罪魁禍首&#xff0c…

普华永道:2018 AI预测报告 将回答关于数据的重大问题

来源&#xff1a;网络大数据近日 &#xff0c;普华永道发布关于2018年人工智能趋势预测的报告&#xff0c;同时介绍人工智能对商业、政府和社会的等方面的影响。人工智能非常复杂&#xff0c;且发展迅速。AI 在一些领域做了很多&#xff0c;在另一些领域做得较少&#xff0c;这…

过渡效果_剪映教程:剪映怎么添加视频之间的过渡转场效果?

今天是国庆假期的第三天&#xff0c;直播apk小编今天确实郁闷的无比&#xff0c;因为今天小编所在的老家正在下雨&#xff0c;而且从上午一直下到现在下了整整一天!OMG&#xff0c;浪费了一天的假期。不过还好有你们&#xff0c;小编还可以静下心来给大家写教程&#xff0c;好了…

C++ 多继承和虚继承的内存布局

来源&#xff1a;http://www.oschina.net/translate/cpp-virtual-inheritance 来源&#xff1a;http://www.cnblogs.com/BeyondAnyTime/archive/2012/06/05/2537451.html C中的虚拟继承的一些总结 1.为什么要引入虚拟继承 虚拟继承是多重继承中特有的概念。虚拟基类是为解决…

C++学习之路 | PTA乙级—— 1076 Wifi密码 (15 分)(精简)

1076 Wifi密码 (15 分) 下面是微博上流传的一张照片&#xff1a;“各位亲爱的同学们&#xff0c;鉴于大家有时需要使用 wifi&#xff0c;又怕耽误亲们的学习&#xff0c;现将 wifi 密码设置为下列数学题答案&#xff1a;A-1&#xff1b;B-2&#xff1b;C-3&#xff1b;D-4&…

Java并发编程实战~ReadWriteLock~

快速实现一个缓存 public class Cache<K,V> {final Map<K, V> m new HashMap<>();final ReadWriteLock rwl new ReentrantReadWriteLock();// 读锁final Lock r rwl.readLock();// 写锁final Lock w rwl.writeLock();// 读缓存public V get(K key) {r.l…

猎取人心的36条黄金法则

法则一&#xff1a;维护你的声誉&#xff0c;保持清白法则二&#xff1a;不会树敌的人&#xff0c;也不会拥有朋友法则三&#xff1a;小人物也绝对值得你去与之交往法则四&#xff1a;绝不可忽视外在形象……首因效应是很厉害的法则五&#xff1a;亲密有间&#xff0c;绝不可踏…

怎么导出链接_如何导出CocosCreator项目供cocos2dx加载

1、新建CocosCreator项目。2、安装creator_to_cocos2dx 插件拷贝到 Creator 项目的 packages 目录3、在cocoscreator项目中&#xff0c;项目(Project) -> LuaCPP Support -> Setup Target Project&#xff0c;出现的对话框中 Project Path 选择目标 Cocos2d-x 工程的路径…

C++对象模型

From&#xff1a;http://blog.csdn.net/wxc1987821/article/details/5958325 图说C对象模型&#xff1a;对象内存布局详解&#xff1a;http://blog.csdn.net/alexqiweek/article/details/52624641 1 前言 了解你所使用的编程语言究竟是如何实现的&#xff0c;对于C程序员可能…

Java并发编程实战~StampedLock

悲观读/写锁示例 final StampedLock sl new StampedLock();// 获取 / 释放悲观读锁示意代码 long stamp sl.readLock(); try {// 省略业务相关代码 } finally {sl.unlockRead(stamp); }// 获取 / 释放写锁示意代码 long stamp sl.writeLock(); try {// 省略业务相关代码 } …

C++学习之路 | PTA乙级—— 1078 字符串压缩与解压 (20 分)(精简)

1078 字符串压缩与解压 (20 分) 文本压缩有很多种方法&#xff0c;这里我们只考虑最简单的一种&#xff1a;把由相同字符组成的一个连续的片段用这个字符和片段中含有这个字符的个数来表示。例如 ccccc 就用 5c 来表示。如果字符没有重复&#xff0c;就原样输出。例如 aba 压缩…

GridView正反双向排序

后台代码&#xff1a; using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using S…

北斗产业发展现状与前景预测研究

来源&#xff1a;北斗时空作者&#xff1a;曹冲北斗产业&#xff0c;泛指中国卫星导航产业&#xff0c;2012年底我国北斗系统投入区域服务以后&#xff0c;中国的卫星导航产业就以北斗为轴心主线加以推动发展&#xff0c;从此称其为北斗产业。顺理成章由其延续我国整个导航定位…

python注册系统_Python制作简易注册登录系统

Python制作简易注册登录系统这篇文章主要为大家详细介绍了 Python 简易注册登录系统的制作方法&#xff0c;具有一定的参考价值&#xff0c;感兴趣的小伙伴们可以参考一下Python 是一种面向对象、解释型计算机程序设计语言&#xff0c;由 Guido van Rossum 于 1989 年底发明&am…