题目描述
正整数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 < 1010。
输出描述:
在一行中输出PA + PB的值。
输入例子:
3862767 6 13530293 3
输出例子:
399
#include <iostream>
#include<string>
using namespace std;
/*
int main()
{
int P_a=0, P_b=0,i,j,count_1=0,count_2=0,m=1,n=1;
string A, B;
char D_a, D_b;
cin >> A >> D_a >> B >> D_b;
for (i = 0; i < A.length(); i++)
{
if (A[i] == D_a)
{
P_a += int(D_a - '0')*m;
m = 10 * m;
count_1++;
}
}
for (j = 0; j < B.length(); j++)
{
if (B[j] == D_b)
{
P_b += int(D_b - '0')*n;
n = 10 * n;
count_2++;
}
}
cout <<P_a+P_b;
return 0;
}
*/
int main()
{
long long a, b;
int Da, Db,Pa=0,Pb=0;
cin >> a >> Da >> b >> Db;
while (a)
{
if (a % 10 == Da) Pa = Pa * 10 + Da;
a /= 10;
}
while (b)
{
if (b % 10 == Db) Pb = Pb * 10 + Db;
b /= 10;
}
cout << Pa + Pb;
return 0;
}