2020.03.03 成吨的作业来啦,赶紧写完就得开始写作业去辽,时间是挤出去的,我挤哈哈哈,今天的题目很简单,做完才发现是一个十五分的签到题就不写太多题解了,一看就能懂(估计也没有人会来看)
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<stdio.h> //标准输入输出
#include<stdlib.h>
#include<math.h> //数学函数
#include<string.h> //C语言字符数组的字符串
#include<algorithm> //C++标准模板库的函数
#include<map> //map映射容器
#include<unordered_map> //无序的map映射容器
#include<vector> //变长数组容器
#include<queue> //队列
#include<stack> //栈
#include<string> //C++string类
#include<set> //set集合
#define SIZE 50
using namespace std; //标准命名空间
//可以加入全局变量或者其他函数
int main(){ //主函数
#ifdef ONLINE_JUDGE //如果有oj系统(在线判定),则忽略文件读入,否则使用文件作为标准输入
#else
freopen("1.txt", "r", stdin); //从1.txt输入数据
#endif
string a , c;
char b , d;
cin >> a >> b >> c >> d;
int counter_a = 0 , counter_b = 0;
for(int i = 0 ; i < a.size() ; i++){
if(a[i] == b){
counter_a++;
}
}
for(int i = 0 ; i < c.size() ; i++){
if(c[i] == d){
counter_b++;
}
}
long long A = 0, B = 0;
for(int i = 0; i < counter_a;i++){
A += (b - '0') * pow(10 , i);
}
for(int i = 0; i < counter_b;i++){
B += (d - '0') * pow(10 , i);
}
cout << A + B << endl;
return 0;
}