PAT B1016 部分A+B (15分)

正整数 A 的“D​A(为 1 位整数)部分”定义为由 A 中所有 DA 组成的新整数 PA 。例如:给定 A=3862767,DA =6,则 A 的“6 部分”P​A 是 66,因为 A 中有 2 个 6。
现给定 A、D​A 、B、D​B ,请编写程序计算 PA +P​B

输入格式:

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

输出格式:

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

输入样例 1:

3862767 6 13530293 3

输出样例 1:

399

输入样例 2:

3862767 1 13530293 8

输出样例 2:

0

#include
using namespace std;
int pab(int n,int dn){
  int m,pn=0;
  while(n!=0){
    m=n%10;
    if(m==dn)pn=pn*10+dn;
    n=n/10;
  }
  return pn;
}
int main(){
    int a,da,b,db;
    cin>>a>>da>>b>>db;
    int pa=pab(a,da);
    int pb=pab(b,db);
    cout<<pa+pb;
    return 0;
}

你可能感兴趣的:(PAT)