6、部分A+B

题目描述

正整数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的值。

输入例子:

3862767 6 13530293 3

输出例子:

399

java1.7:

import java.util.Scanner;

public class Main {

	private static Scanner input;
	
	/**
	 * 用String,方便分隔,注意空串的兼容逻辑
	 * @author fuyuw
	 * 2018年8月19日 下午5:56:50
	 */
	public static void main(String[] args) {
		input = new Scanner(System.in);
		String A = input.next();
		String DA = input.next();
		String B = input.next();
		String DB = input.next();
		
		String PA = "";
		for(int i=0;i<A.length();i++){
			if(DA.equals(String.valueOf(A.charAt(i)))){
				PA+=A.charAt(i);
			}
		}
		String PB = "";
		for(int i=0;i<B.length();i++){
			if(DB.equals(String.valueOf(B.charAt(i)))){
				PB+=B.charAt(i);
			}
		}
		PA = "".equals(PA)?"0":PA;
		PB = "".equals(PB)?"0":PB;
		System.out.println(Long.parseLong(PA)+Long.parseLong(PB));
	}
}

测试用例范围内最大耗时30ms,最大占用内存10560KB

猜你喜欢

转载自blog.csdn.net/fuyuwei2015/article/details/81840040