0
我最近开始尝试使用Java.I POJ跨problem来(也可here对UVA),这是知道的树恢复。这里是我的代码:为什么OJ为这段代码报告运行时错误?
import java.util.Scanner;
公共类主要{
static String pre, in;
static char[] post = new char[100];
static int len;
public static void solve(int p1, int p2, int m1, int m2) {
if (p1 > p2)
return;
int i;
for (i = m1; i <= m2; i++) {
if(in.charAt(i)==pre.charAt(p1))
break;
}
post[--len] = pre.charAt(p1);
if (p1 == p2)
return;
solve(p1 + (i + 1) - m1, p2, i + 1, m2);
solve(p1 + 1, p1 + i - m1, m1, i - 1);
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (sc.hasNextLine()) {
pre = sc.next();
in = sc.next();
len = pre.length();
solve(0, len - 1, 0, len - 1);
System.out.println(post);
}
}
}
代码运行以及给定的测试用例eclipse.However默认的编译选项它报告运行时错误,当我submit.I'm想知道这是怎么happen.Thank你。