部分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}