浙江大学PAT (Basic Level) Practice (中文)1016部分A+BJAVA实现代码及分析
2019-03-21 22:34
656 查看
1016
部分A+B
因为输入的数范围比较大,所以我个人的思路1是将输入的两个正整数以字符串转字符数组的格式输入并保存,然后根据输入的P的值进行字符比较得出相同字符的个数,然后将Pa和Pb的值计算并相加之后进行输出。
具体实现代码如下:
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner input=new Scanner(System.in); String a,b; int da,db; a=input.next(); da=input.nextInt(); b=input.next(); db=input.nextInt(); cal(a,b,da,db); } public static void cal(String a,String b,int da,int db) { char ca[]=a.toCharArray(); char cb[]=b.toCharArray(); int ia=0,ib=0; char cda=(char) (da+48); char cdb=(char)(db+48); for(char item:ca) { if(item==cda) { ia++; } } for(char item:cb) { if(item==cdb) { ib++; } } int ta=0,tb=0; for(;ia>0;ia--) { ta+=Math.pow(10, ia-1)*da; } for(;ib>0;ib--) { tb+=Math.pow(10, ib-1)*db; } System.out.println(ta+tb); } }
相关文章推荐
- 浙江大学PAT (Basic Level) Practice (中文)1018锤子剪刀布JAVA实现代码及分析
- 浙江大学PAT (Basic Level) Practice (中文)1017A除以BJAVA实现代码及分析
- PAT (Basic Level) Practise (中文)1002. 写出这个数 (20)(java实现)
- PAT (Basic Level) Practise (中文) 1016. 部分A+B (15)
- PAT (Basic Level) Practise (中文) 1016. 部分A+B (15)
- PAT (Basic Level) Practise (中文)1016. 部分A+B (15)
- PAT (Basic Level) Practise (中文)1016. 部分A+B (15)
- PAT (Basic Level) Practice (中文)部分C语言版答案
- PAT (Basic Level) Practise (中文)- 1016. 部分A+B (15)
- Pat(Basic Level)Practice--1016(部分A+B)
- PAT Basic 1016. 部分A+B (15)(C语言实现)
- PAT (Basic Level) Practice (中文):1007 素数对猜想(20分)
- PAT 乙级 (Basic Level) Practice (中文)1035
- PAT 乙级 (Basic Level) Practice (中文)1058
- PAT (Basic Level) Practice 1028 人口普查(20)(C语言实现)
- PAT (Basic Level) Practice (中文)1074 宇宙无敌加法器(C语言)
- PAT 乙级 (Basic Level) Practice (中文)1009
- PAT 乙级 (Basic Level) Practice (中文)1033
- PAT 乙级 (Basic Level) Practice (中文)1050
- PAT 乙级 (Basic Level) Practice (中文)1057