题解 | #将真分数分解为埃及分数#,只能说很考验细心和耐心了
二维数组操作
http://www.nowcoder.com/practice/2f8c17bec47e416897ce4b9aa560b7f4
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
while (in.hasNextInt()) { // 注意 while 处理多个 case
int x = in.nextInt() - 1;
int y = in.nextInt() - 1;
if (x < 1 || x > 9 || y < 1 || y >9){
System.out.println("-1");
continue;
}
System.out.println("0");
String result1 = isOk(in,x,y);
System.out.println(result1);
String result2 = isOk2(in,x,y);
System.out.println(result2);
String result3 = isOk3(in,x,y);
System.out.println(result3);
String result4 = isOk4(in,x,y);
System.out.println(result4);
}
}
// 交换
private static String isOk(Scanner in,int x,int y) {
int a = in.nextInt();
int b = in.nextInt();
int c = in.nextInt();
int d = in.nextInt();
if (a < 0 || b < 0 || c < 0 || d < 0){
return "-1";
}
if (a > x || b > y || c > x || d > y){
return "-1";
}
return "0";
}
// 插入行
private static String isOk2(Scanner in,int x,int y){
int insertRow = in.nextInt();
if (x + 1 > 8 || insertRow < 0 || insertRow > x){
return "-1";
}
return "0";
}
// 插入列
private static String isOk3(Scanner in,int x,int y){
int insertRank = in.nextInt();
if (y + 1 > 8 || insertRank < 0 || insertRank > y){
return "-1";
}
return "0";
}
// 查询
private static String isOk4(Scanner in,int x,int y){
int a = in.nextInt();
int b = in.nextInt();
if (a < 0 || b < 0 || a > x || b > y){
return "-1";
}
return "0";
}
}