您的位置:首页 > 其它

浙大 pat Basic Level 1016

2014-02-28 14:36 260 查看

1016. 部分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 < 1010。

输出格式:

在一行中输出PA + PB的值。

输入样例1:
3862767 6 13530293 3

输出样例1:
399

输入样例2:
3862767 1 13530293 8

输出样例2:
0


#include <iostream>
#include <vector>
#include <stdio.h>
using namespace std;
int main()
{
vector<int> Avec,Bvec;
char temp;
int DA,DB;
int index = 0;
temp = getchar();
while('\n' != temp)
{
if(0 == index)
Avec.push_back(temp - '0');
if(1 == index)
DA = temp - '0';
if(2 == index)
Bvec.push_back(temp - '0');
if(3 == index)
DB = temp - '0';
temp = getchar();
if(' ' == temp)
{
index++;
temp = getchar();
}
}
int PA = 0, PB = 0;
for(vector<int>::size_type i = 0; i != Avec.size(); i++)
{
if(Avec[i] == DA)
PA = PA*10 + DA;
}
for(vector<int>::size_type i = 0; i != Bvec.size(); i++)
{
if(Bvec[i] == DB)
PB = PB*10 + DB;
}
cout << PA+PB << endl;

system("pause");
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: