本文主要是介绍【Java】PAT(Basic Level) 1016 部分A+B,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
前言
这道题很简单,轻松搞定!
题目
1016 部分A+B
作者 CHEN, Yue
单位 浙江大学
正整数 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<109。
输出格式:
在一行中输出 PA+PB 的值。
输入样例 1:
3862767 6 13530293 3
输出样例 1:
399
输入样例 2:
3862767 1 13530293 8
输出样例 2:
0
代码
import java.io.*;
class Main{public static void main(String[] args) throws IOException{//接收输入BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); //获取字符输入流String[] strArr = br.readLine().split(" +"); //读取输入的一行信息,以空格为间隔切割后存储到数组中//声明变量int t = 0; //临时变量int a = Integer.parseInt(strArr[0]); //待测数字aint b = Integer.parseInt(strArr[2]); //待测数字bint da = Integer.parseInt(strArr[1]); //要计数的某个数字int db = Integer.parseInt(strArr[3]); //要计数的某个数字int pa=0, pb=0, sum=0; //pa为数字da在a中出现的次数,pb同理,sum=pa+pb//计算for(;a!=0;a=a/10){ //遍历数字a的每一位t = a % 10; //取当前a的个位数字if(t==da) //若是要计数的目标数字pa = pa*10 + da; //更新pa的值}for(;b!=0;b=b/10){ //计算pbt = b % 10; //取当前b的个位数字if(t==db) //若是要计数的目标数字pb = pb*10 + db; //更新pb的值}sum = pa + pb;//输出System.out.print(sum);}
}
这篇关于【Java】PAT(Basic Level) 1016 部分A+B的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!