美文网首页
2019-07-11 B1016 部分A+B

2019-07-11 B1016 部分A+B

作者: JO炮 | 来源:发表于2019-07-12 00:08 被阅读0次

正整数 A 的“D​A​​(为 1 位整数)部分”定义为由 A 中所有 D​A​​ 组成的新整数 P​A​​。例如:给定 A=3862767,D​A​​=6,则 A 的“6 部分”P​A​​ 是 66,因为 A 中有 2 个 6。

现给定 A、D​A​​、B、D​B​​,请编写程序计算 P​A​​+P​B​​。

输入格式:

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

输出格式:

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

        我比较恐惧使用字符串数组来解题,因为对这个类型不够熟悉,但这道题使用整型,我没有找到解决的办法。因此我参考了柳神的代码,换成字符串类型,问题便迎刃而解。

这道题需要注意的点是:在判断整型与字符型变量是否相等时可以使用a = c - '0'这个式子解决。

#include <iostream>

using namespace std;

int main() {

string a,b;

int da,db,pa = 0,pb = 0;

int count1 = 0;

int count2 = 0;

cin >> a >> da >> b >> db;

for(int i = 0; i < a.length(); i++)

if(da == (a[i] - '0')) count1++;

for(int i = 0; i < b.length(); i++)

if(db == (b[i] - '0')) count2++;

if(count1 != 0) pa = da;

if(count2 != 0) pb = db;

for(int i = 1; i < count1; i++)

pa = 10 * pa + da;

for(int i = 1; i < count2; i++)

pb = 10 * pb +db;

cout << pa + pb;

return 0;

}

相关文章

  • PAT总结(B1016、B1026)

    PAT总结(B1016、B1026) B1016 部分A+B 题目 正整数 A 的“DA(为 1 位整数)部分”定...

  • 2019-07-11 B1016 部分A+B

    正整数A的“D​A​​(为 1 位整数)部分”定义为由A中所有D​A​​组成的新整数P​A​​。例如:给定A=38...

  • 模拟B1016 部分A+B (15分)

    正整数 A 的“(为 1 位整数)部分”定义为由 A 中所有组成的新整数 。例如:给定 ,,则 A 的“6 部分...

  • 1016 部分A+B

    正整数 A 的“D​A(为 1 位整数)部分”定义为由 A 中所有 D​A 组成的新整数 P​A 。例如:给定 A...

  • 1016.部分A+B

    题目描述 正整数 A 的“D​A​​(为 1 位整数)部分”定义为由 A 中所有 D​A​​ 组成的新整数 P​A...

  • PAT 1016 部分A+B

    GitHub

  • PAT-B 1016 部分A+B(C语言)

    题目 链接:PAT (Basic Level) Practice 1016 部分A+B 正整数 A 的“(为 1 ...

  • pat1016部分A+B

    1016 部分A+B (15 分) 正整数 A 的“D​A​​(为 1 位整数)部分”定义为由 A 中所有 D​A...

  • PAT Basic 1016 部分A+B

    题目 正整数 A 的“D​A(为 1 位整数)部分”定义为由 A 中所有 DA组成的新整数 PA。例如:给定 A=...

  • 1016. 部分A+B (15)

    描述 正整数A的“DA(为1位整数)部分”定义为由A中所有DA组成的新整数PA。例如:给定A = 3862767,...

网友评论

      本文标题:2019-07-11 B1016 部分A+B

      本文链接:https://www.haomeiwen.com/subject/tjcskctx.html