1016 部分A+B

正整数 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<10100 < A, B < 10^{10}0<A,B<1010​​

输出格式:

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

输入样例 1:

3862767 6 13530293 3

输出样例 1:

399

输入样例 2:

3862767 1 13530293 8

输出样例 2:

0
  题解:这道题没有啥难度,根据题意直接作答即可。
代码如下:
 1 #include<iostream>
 2 
 3 using namespace std;
 4 
 5 int main()
 6 {
 7     long long int da,a,db,b,num_a = 1,num_b = 1,pa = 0,pb = 0;
 8     cin>>a>>da>>b>>db;
 9     while(a)
10     {
11         if( a%10 == da)
12         {
13             pa+=( num_a*da);
14             num_a*=10;
15         }
16         a/=10;
17     }
18     while(b)
19     {
20         if( b%10 == db)
21         {
22             pb+=( num_b*db);
23             num_b*=10;
24         }
25         b/=10;
26     }
27     cout<<pa+pb;
28     
29     return 0;
30 }

 


posted on 2018-08-09 12:49  朋酱  阅读(93)  评论(0)    收藏  举报