您的位置:首页 > 其它

1016. 部分A+B (15)

2015-11-25 16:50 288 查看
1016. 部分A+B (15)

正整数A的“DAD_A(为1位整数)部分”定义为由A中所有DAD_A组成的新整数PAP_A。例如:给定A = 3862767,DAD_A = 6,则A的“6部分”PAP_A是66,因为A中有2个6。

现给定A、DAD_A、B、PAP_A,请编写程序计算PAP_A + PBP_B。

输入格式:

输入在一行中依次给出A、DAD_A、B、PAP_A,中间以空格分隔,其中0 < A, B < 101010^{10}。

输出格式:

在一行中输出PAP_A + PBP_B的值。

输入样例1:

3862767 6 13530293 3

输出样例1:

399

输入样例2:

3862767 1 13530293 8

输出样例2:

0

#include<iostream>
#include<fstream>
#include<string>
using namespace std;
int str2int(string s,int n)
{
int num=0;
int mul=1;
for(int i=s.length();i>0;i--)
{
if((s[i-1]-'0')==n)
{
num=num+n*mul;
mul=mul*10;
}
}
return num;
}
int main()
{
fstream file("data.txt");
if(file.fail())
return 1;
string num1,num2;
int n,m;
file>>num1>>n>>num2>>m;
int A=str2int(num1,n);
int B=str2int(num2,m);
cout<<A+B<<endl;
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: