📄 3733683_ac_469ms_5308k.java
字号:
import java.util.*;
import java.math.*;
public class Main {
private Scanner in;
public static void main(String[] args) {
new Main().run();
}
private void run() {
in = new Scanner(System.in);
String f, c, r, str;
while (in.hasNext()) {
str = in.next();
int index = str.indexOf('-');
if (index == -1) {
break;
}
f = str.substring(0, index);
r = str.substring(index + 1);
int i;
c = "";
for (i = r.length() - 1; i > 0; i--) {
c = r.substring(i);
if (less(LSD(c.length(), f), c)) {
if (r.equals(MSD(f.length() - c.length(), f) + c)) {
break;
}
} else {
if (r.equals((power(c.length())
.add(new BigInteger(MSD(f.length() - c.length(), f) + c))).toString())) {
break;
}
}
}
if (i == 0) {
c = r;
}
System.out.println(f + "-" + c);
}
}
private boolean less(String a, String b) {
return new BigInteger(a).compareTo(new BigInteger(b)) < 0;
}
private String MSD(int a, String b) {
if (a <= 0) {
return "";
}
return b.substring(0, a);
}
private String LSD(int a, String b) {
String tmp = b;
while (tmp.length() < a) {
tmp = "0" + tmp;
}
return tmp.substring(tmp.length() - a);
}
private BigInteger power(int b) {
String ret = "1";
for (int i = 0; i < b; i++) {
ret += "0";
}
return new BigInteger(ret);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -