1016 部分A+B(15 分)
阿新 • • 發佈:2019-01-27
正整數 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 的值。
輸入樣例 1:
3862767 6 13530293 3
輸出樣例 1:
399
輸入樣例 2:
3862767 1 13530293 8
輸出樣例 2:
0
程式碼:
#include <iostream> #include <cmath> #include <string> using namespace std; int main(){ string a,b; int da,db,pa = 0,pb = 0; int cnta = 0,cntb = 0; cin>>a>>da; cin>>b>>db; for(int i = 0;i<a.size();i++){ if(a[i]-'0'==da)cnta++; } for(int i = 0;i<b.size();i++){ if(b[i]-'0'==db)cntb++; } while(cnta){ pa += da*pow(10.0,cnta-1); cnta--; } while(cntb){ pb += db*pow(10.0,cntb-1); cntb--; } cout<<pa+pb; return 0; }