美文网首页
1016 部分A+B

1016 部分A+B

作者: 初见还是重逢 | 来源:发表于2019-03-06 09:35 被阅读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,请编写程序计算 PA+P​B。

输入格式:

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

输出格式:

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

输入样例 1:

3862767 6 13530293 3

输出样例 1:

399

输入样例 2:

3862767 1 13530293 8

输出样例 2:

0

思路:

此题比较简单,循环读取字符串中的每个字符,遇到相同的字符计数,根据计数返回一个整数类型的PA即可

代码:

部分A+B

//1016  部分A+B
#include<iostream>

using namespace std;

int cal_p(char *a, int b)//将字符串a与da进行对比计算pa
{
    int i = 0, count = 0;
    while (a[i] != '\0')//循环读取字符串中的数字
    {
        count = (a[i] - '0') == b ? count+1:count;//数字相同则增加count
        i++;
    }
    int cal = 0;//计算pa
    for (int i = 0; i < count; i++)
    {
        cal += b;
        b *= 10;
    }
    return cal;
}

int main()
{
    char a[11], b[11];
    int da, db;
    scanf("%s %d %s %d", a, &da, b, &db);
    cout << cal_p(a, da)+cal_p(b,db);
    return 0;
}

相关文章

  • PAT总结(B1016、B1026)

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

  • 1016 部分A+B

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

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

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

  • 1016.部分A+B

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

  • PAT 1016 部分A+B

    GitHub

  • pat1016部分A+B

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

  • 1016

    //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,...

  • 1016部分A+B

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

网友评论

      本文标题:1016 部分A+B

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