dcc_and_cx 发表于 2021-11-17 22:11:25

请问为啥我这个答案是对的,但在网站上提交显示错误

部分A+B (15) [模拟]
正整数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 < 10^10。
输出格式:
在⼀⾏中输出PA + PB的值
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
        long long int a, b;
        int c, d;
        int num1 = 0, num2 = 0;
        cin >> a >> c >> b >> d;
        int PA = 0, PB = 0;
        while (a)
        {
                if (c == a % 10)
                {
                        num1++;
                }
                a = a / 10;
        }
        while (b)
        {
                if (d == b % 10)
                {
                        num2++;
                }
                b = b / 10;
        }
        for (int i = 1; i <= num1; i++)
        {
                PA += 6 * pow(10, i-1);
        }
        for (int i = 1; i <= num2; i++)
        {
                PB += 3 * pow(10, i - 1);
        }
        cout << PA + PB;
    return 0;
}

jhq999 发表于 2021-11-18 07:32:40

PA += c * pow(10, i-1);
PB += d * pow(10, i - 1);
页: [1]
查看完整版本: 请问为啥我这个答案是对的,但在网站上提交显示错误