每日算法(B1016)-部分A+B

问题描述

正整数A的"DA(一位整数)部分"定义为由A中所有DA组成的新整数PA。例如给定A=3862767,DA=6,则A的“6部分”是66

输入格式

在一行中依次输入A,DA,B,DB,中间已空格分开,其中0<A,B<10^10

输出格式

在一行中输出PA+PB的值

输入样例

3862767 6 13530293 3

输出样例

399

思路

取X每一位出来和DX作比较,如果相同则Px=Px*10+Dx

我的代码

#include<stdio.h>
#pragma warning(disable:4996)

int main()
{
    int a, da, b, db;
    int pa = 0,pb = 0,temp;
    scanf("%d%d%d%d",&a,&da,&b,&db);
    while (a>0){
        temp = a % 10;
        a /= 10;
        if (temp==da)
            pa =pa*10+da;
    }
    while (b > 0) {
        temp = b % 10;
        b/= 10;
        if (temp == db)
            pb = pb*10+db;
    }
    printf("%d", pa + pb);
}

via tsuhao

发表评论

电子邮件地址不会被公开。 必填项已用*标注