部分A+B (PATB-1016)

题面

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

现给定 A、DA、B、DB,请编写程序计算 PA+PB。

输入

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

输出

在一行中输出 PA+PB 的值。

样例输入1

13862767 6 13530293 3

样例输出1

1399

样例输入2

13862767 1 13530293 8

样例输出2

10

提示

思路

代码

 1int a, b, da, db;
 2
 3int main()
 4{
 5    scanf("%d %d %d %d", &a, &da, &b, &db);
 6    int ta = 0, tb = 0;
 7    while (a)
 8    {
 9        if (a % 10 == da)
10            ta = ta * 10 + da;
11        a /= 10;
12    }
13    while (b)
14    {
15        if (b % 10 == db)
16            tb = tb * 10 + db;
17        b /= 10;
18    }
19
20    printf("%d\n", ta + tb);
21    return 0;
22}