pat 乙级 1016 部分A+B(C++)

题目

正整数 A 的“D​A(为 1 位整数)部分”定义为由 A 中所有 D​A组成的新整数 P​A。例如:给定 A=3862767,DA=6,则 A 的“6 部分”P​A是 66,因为 A 中有 2 个 6。现给定 A、D​A、B、DB,请编写程序计算 P​A+P​B​​ 。

输入格式:

输入在一行中依次给出 A、DAB、D​B​​,中间以空格分隔,其中 0<A,B<1010​​ 。

输出格式:

在一行中输出 PA+P​B的值。

输入样例 1

3862767 6 13530293 3

输出样例 1

399

输入样例 2

3862767 1 13530293 8

输出样例 2

0

分析

  • 注意题给范围,0~1010,而int的范围是 -2147483648 到 2147483647。
  • 所以数据类型选择long long int,在A里面DA的个数往往不止一个,所以用一个大小为10的数组来存储。
  • 取某一位的数字用取余即可,然后每一次的运算中将原来的A/10,继续取余。取余的同时和DA比较,如果相等则存入数组。
  • 将数组里不为零的数乘以原本所在位的单位(如10,100,100等),然后累加输出。

AC代码

#include<iostream>
using namespace std;int a[10],b[10],a1,b1;//int类型全局变量没有初始化时的默认值为0int main()
{long long int A,B;int i,j,DA,DB;cin>>A>>DA>>B>>DB;for(i=0;i<10;i++){a1=A%10;A=A/10;if(a1==DA){a[i]=a1;}b1=B%10;B=B/10;if(b1==DB){b[i]=b1;}}int sum=0,temp1=1,temp2=1;for(i=0;i<10;i++){if(a[i]!=0){sum=sum+a[i]*temp1;temp1*=10;}if(b[i]!=0){sum=sum+b[i]*temp2;temp2*=10;} }cout<<sum;return 0;
}

Reference

C++中未初始化的数组的默认值问题

有任何问题,欢迎在评论区留言,博主每天都会看的哟!

更多题解
pat 乙级 题解汇总(持续更新)(C++)

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

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

相关文章

NS3使用过程中重要内容整理

1 ns-3中两个常用的网络分析工具——TcpDump和Wireshark 可以与Wireshark结合,更好的理解数据包的传送过程

C++ floor、ceil、round函数的区别

函数解释 floor函数&#xff0c;向下取整。即向负无穷方向取离传入参数最近的整数ceil函数&#xff0c;向上取整。即向正无穷方向取离传入参数最近的整数round函数&#xff0c;四舍五入。 头文件 C语言&#xff1a;math.hC: cmath 函数原型 double floor(double)double ce…

javamail程序源码_JavaMail可能是邪恶的(并迫使您重新启动应用程序服务器)

javamail程序源码在配置JavaMail时&#xff0c;总是有一种有趣的方法。 基本上&#xff0c;您必须填写无类型的地图或属性结构&#xff0c;并希望获得正确的解释。 网络上无数的教程显示了使其正常工作&#xff08;发送/接收邮件&#xff09;所需的最小属性。 但是&#xff0c…

U盘在Ubuntu20.04下只能读取文件不能向U盘复制文件

背景 U盘在Ubuntu20.04下只能读取文件不能向该U盘复制文件,该U盘在其余电脑上一点问题不存在. Ubuntu系统插入其余U盘也能正确读取,只对该U盘无法处理. 处理过程 在CSDN中找了许多方法&#xff0c;比如这种“三行命令教你解决linux系统下U盘只读文件系统问题”。 但是一点…

C++ 函数参数3种传值方式(以交换两个数为例)

简介 在C中&#xff0c;函数参数的传值方式有传值调用、指针调用和引用调用。接下来&#xff0c;通过一个实例来演示三者区别。 代码 #include <iostream>using namespace std; //传值调用 void Swap(int a,int b) {int tempa;ab;btemp; } //指针调用 void Swap2(int…

删除已弃用的CMS垃圾收集器的JEP草案

在2017年4月10日的文章“ Java垃圾收集器&#xff1a;G1GC何时将CMS强制退出&#xff1f; ”&#xff0c;我讨论了JEP 291 &#xff08;“弃用并发标记扫描&#xff08;CMS&#xff09;垃圾收集器”&#xff09;&#xff0c;并提供了一些赞成和反对弃用&#xff08;并最终淘汰&…

Ubuntu系统中利用Sublime分别运行Python与Python3

背景 两台Ubuntu系统的电脑均使用Sublime&#xff0c;运行相同的代码&#xff0c;出现不同的效果。 经观察&#xff0c;一个Sublime python F5 编译采用的为python3&#xff0c;另一个采用的为python2&#xff08;通过两个版本的print函数不同观察&#xff0c;一个print&…

AWS Lambda事件源映射:使您的触发器混乱无序

最近&#xff0c;我们为Sigma Cloud IDE上的无服务器项目引入了两个新的AWS Lambda事件源&#xff08;触发类型&#xff09;&#xff1a; SQS队列和DynamoDB流 。 &#xff08;是的&#xff0c;AWS在几个月前就向他们介绍了&#xff1b;但是我们仍然是一个很小的团队&#xff0…

pat 乙级 1047 编程团体赛(C++)

题目 编程团体赛的规则为&#xff1a;每个参赛队由若干队员组成&#xff1b;所有队员独立比赛&#xff1b;参赛队的成绩为所有队员的成绩和&#xff1b;成绩最高的队获胜。现给定所有队员的比赛成绩&#xff0c;请你编写程序找出冠军队。 输入格式&#xff1a; 输入第一行给出…

Sublime Text3常用基本操作

1 在每行光标快速移动 光标移动至行首:(home)键&#xff1b;光标移动至行尾:(end)键&#xff1b;(ctrl)(→)是单位性移动光标ctrl shift -> 是选中单位性移动光标 2 快速定位至文件首或尾 window: ctrl home / end mac: cmd ↓全选左 / 右方向键 3 选中一行快捷键 Shi…

pat 乙级 1011 A+B 和 C(C++)

题目 给定区间 [−2​31​​ ,2​31​​ ] 内的 3 个整数 A、B 和 C&#xff0c;请判断 AB 是否大于 C。 输入格式&#xff1a; 输入第 1 行给出正整数 T (≤10)&#xff0c;是测试用例的个数。随后给出 T 组测试用例&#xff0c;每组占一行&#xff0c;顺序给出 A、B 和 C。…

ubuntu安装后需了解的基本操作

转载原文链接&#xff1a;https://blog.csdn.net/weixin_44487337/article/details/99938348 &#xff08;一&#xff09;更换源 编辑/etc/apt/sources.list cp /etc/apt/sources.list /etc/apt/sources_default.list vi /etc/apt/sources.list //将cn.archive.ubuntu.com替换…

java 并发计数器_Java 8 LongAdders:管理并发计数器的正确方法

java 并发计数器我只是买了新玩具&#xff0c;而Java 8有很多 。 这次我想谈谈我的最爱之一-并发加法器。 这是一组新的类&#xff0c;用于管理由多个线程编写和读取的计数器。 新的API有望显着提高性能&#xff0c;同时仍使事情简单明了。 自从多核体系结构问世以来人们一直在…

pat 乙级 1012 数字分类(C++)

题目 给定一系列正整数&#xff0c;请按要求对数字进行分类&#xff0c;并输出以下 5 个数字&#xff1a; A1 能被 5 整除的数字中所有偶数的和&#xff1b;A2 将被 5 除后余 1的数字按给出顺序进行交错求和&#xff0c;即计算n1-n2n3-n4…&#xff1b;A3 被 5 除后余 2 的…

Ubuntu千万不要运行的命令

1 sudo apt-get dist-upgrade 成功把16.04“升级”至18.04并把系统搞崩导致登录不进去

使用Open Liberty的开发模式最大程度地缩短周转时间

我上传了一个视频&#xff0c;其中显示了如何在编写部署在Open Liberty上的Enterprise Java应用程序时减少周转时间。 Maven插件的liberty:dev目标监视文件更改并立即应用更改&#xff0c;而无需重建整个部署工件。 我将展示Open Liberty如何在我们更改源代码&#xff0c;配置…

pat 乙级 1022 D进制的A+B(C++)

题目 输入两个非负 10 进制整数 A 和 B (≤2​30 −1)&#xff0c;输出 AB 的 D (1<D≤10)进制数。 输入格式&#xff1a; 输入在一行中依次给出 3 个整数 A、B 和 D。 输出格式&#xff1a; 输出 AB 的 D 进制数。 输入样例&#xff1a; 123 456 8 输出样例&#xff…

数独 -- 合法数独与完全数独

一、数独的介绍 从2004年底开始&#xff0c;数独游戏在英国变得非常流行。数独(Sudoku)是一个日语单词意思是数字位置之类的单词(或短语)。谜题的理念非常简单;面对一个9 9的网格&#xff0c;被分成9个3 3的块: 在其中的一些盒子里&#xff0c;设置者放一些数字1-9:求解者的目…

程序包无效:“CRX_HEADER_INVALID“

版权声明&#xff1a;本文为博主转载文章&#xff0c;遵循 CC 4.0 BY-SA 版权协议&#xff0c;转载请附上原文出处链接和本声明。 转载本文链接&#xff1a;https://blog.csdn.net/qq_41973208/article/details/89431020 之前在安装谷歌插件的时候遇到的问题&#xff0c;解决…

pat 乙级 1027 打印沙漏(C++)

题目 本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”&#xff0c;要求按下列格式打印 所谓“沙漏形状”&#xff0c;是指每行输出奇数个符号&#xff1b;各行符号中心对齐&#xff1b;相邻两行符号数差2&#xff1b;符号数先从大到小顺序递减到1&#x…