部分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 < 1010
輸出格式:
在一行中輸出PA + PB 的值。

輸入樣例1:
3862767 6 13530293 3
輸出樣例1:
399

輸入樣例2:
3862767 1 13530293 8
輸出樣例2:
0


代碼

#include<stdio.h>
#include<string.h>
#include<math.h>

int main()
{
    char buf[20000];
    char buf2[20000];
    int A,B,Da,Db;
    int Pa = 0,Pb = 0;
    scanf("%d %d %d %d",&A,&Da,&B,&Db);

    sprintf(buf,"%d",A);
    sprintf(buf2,"%d",B);


    int i = 0,j = 0;
    for(i = 0;i < strlen(buf);i++)
    {

        if(buf[i] - 48 == Da)
        {
            j++;
            Pa = Da * (int)pow(10,j - 1) + Pa;
        }
    }


    int k = 0;
    for(i = 0;i < strlen(buf2);i++)
    {
        if(buf2[i] - 48 == Db)
        {
            k++;
            Pb = Db * (int)pow(10,k - 1) + Pb;
        }
    }

    printf("%d",Pa + Pb);

    return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章