首页 > 试题广场 >

1016. 部分A+B (15)

[编程题]1016. 部分A+B (15)
  • 热度指数:29795 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解
正整数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

输出

399
核心代码一行,js的思路
用正则将数据A中的非Da替换掉,然后数字化。同样处理B之后,相加就可以了
var readline = require('readline');
const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout,
    terminal: false
});
rl.on('line', function(line) {
    var arr = line.split(' ');
    console.log((+arr[0].replace(new RegExp("[^" + arr[1] + "]", 'g'), '')) + (+arr[2].replace(new RegExp("[^" + arr[3] + "]", 'g'), '')));
});

编辑于 2017-09-14 17:32:52 回复(1)