题目描述
输入格式
一行,包含三个整数 p,q,r,相邻两个整数之间用单个空格隔开
输出格式
一个整数:即使得p×q=r 成立的最小的 B。如果没有合适的 B,则输出 0
输入输出样例
输入
6 9 42
输出
13
说明/提示
源码
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int radix = 0;
String str1 = sc.next();
String str2 = sc.next();
String str3 = sc.next();
String str = str1+str2+str3;
//最小进制必大于最大的字符+1
for(int j=0;j<str.length();j++) {
String ch = str.substring(j,j+1);
int tmp = ch.charAt(0)-48;
if(tmp>radix) radix = tmp;
}
int result = 0;
for(int i=radix+1;i<16;i++) {
int num1 = Integer.parseInt(str1, i);//调用内置函数将i进制的str转换成10进制
int num2 = Integer.parseInt(str2, i);
int num3 = Integer.parseInt(str3, i);
if(num1*num2==num3) {
result = i;
break;
}
}
System.out.println(result);
}
}
但是洛谷评测只能得到85分(满分100分),不知道问题出在了哪里,欢迎赐教!