注意:需要提交的是一个整数,不要填写任何多余的内容。
解:
public class Adajimu {
static double[][] a = { { 7 }, { 5, 8 }, { 7, 8, 8 }, { 9, 2, 7, 2 }, { 8, 1, 4, 9, 1 }, { 8, 1, 8, 8, 4, 1 },
{ 7, 9, 6, 1, 4, 5, 4 }, { 5, 6, 5, 5, 6, 9, 5, 6 }, { 5, 5, 4, 7, 9, 3, 5, 5, 1 },
{ 7, 5, 7, 9, 7, 4, 7, 3, 3, 1 }, { 4, 6, 4, 5, 5, 8, 8, 3, 2, 4, 3 },
{ 1, 1, 3, 3, 1, 6, 6, 5, 5, 4, 4, 2 }, { 9, 9, 9, 2, 1, 9, 1, 9, 2, 9, 5, 7, 9 },
{ 4, 3, 3, 7, 7, 9, 3, 6, 1, 3, 8, 8, 3, 7 }, { 3, 6, 8, 1, 5, 3, 9, 5, 8, 3, 8, 1, 8, 3, 3 },
{ 8, 3, 2, 3, 3, 5, 5, 8, 5, 4, 2, 8, 6, 7, 6, 9 }, { 8, 1, 8, 1, 8, 4, 6, 2, 2, 1, 7, 9, 4, 2, 3, 3, 4 },
{ 2, 8, 4, 2, 2, 9, 9, 2, 8, 3, 4, 9, 6, 3, 9, 4, 6, 9 },
{ 7, 9, 7, 4, 9, 7, 6, 6, 2, 8, 9, 4, 1, 8, 1, 7, 2, 1, 6 },
{ 9, 2, 8, 6, 4, 2, 7, 9, 5, 4, 1, 2, 5, 1, 7, 3, 9, 8, 3, 3 },
{ 5, 2, 1, 6, 7, 9, 3, 2, 8, 9, 5, 5, 6, 6, 6, 2, 1, 8, 7, 9, 9 },
{ 6, 7, 1, 8, 8, 7, 5, 3, 6, 5, 4, 7, 3, 4, 6, 7, 8, 1, 3, 2, 7, 4 },
{ 2, 2, 6, 3, 5, 3, 4, 9, 2, 4, 5, 7, 6, 6, 3, 2, 7, 2, 4, 8, 5, 5, 4 },
{ 7, 4, 4, 5, 8, 3, 3, 8, 1, 8, 6, 3, 2, 1, 6, 2, 6, 4, 6, 3, 8, 2, 9, 6 },
{ 1, 2, 4, 1, 3, 3, 5, 3, 4, 9, 6, 3, 8, 6, 5, 9, 1, 5, 3, 2, 6, 8, 8, 5, 3 },
{ 2, 2, 7, 9, 3, 3, 2, 8, 6, 9, 8, 4, 4, 9, 5, 8, 2, 6, 3, 4, 8, 4, 9, 3, 8, 8 },
{ 7, 7, 7, 9, 7, 5, 2, 7, 9, 2, 5, 1, 9, 2, 6, 5, 3, 9, 3, 5, 7, 3, 5, 4, 2, 8, 9 },
{ 7, 7, 6, 6, 8, 7, 5, 5, 8, 2, 4, 7, 7, 4, 7, 2, 6, 9, 2, 1, 8, 2, 9, 8, 5, 7, 3, 6 },
{ 5, 9, 4, 5, 5, 7, 5, 5, 6, 3, 5, 3, 9, 5, 8, 9, 5, 4, 1, 2, 6, 1, 4, 3, 5, 3, 2, 4, 1 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } };
// 最后这一堆0代表电子秤,其本身没有重量
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// a[i][j]表示它本身的重量加上压在它身上的重量
for (int i = 1; i < 30; i++) {
a[i][0] += a[i - 1][0] / 2;
for (int j = 1; j < i; j++) {
a[i][j] += (a[i - 1][j] / 2 + a[i - 1][j - 1] / 2);
}
a[i][i] += a[i - 1][i - 1] / 2;
}
double min = 999999999;
double max = -1;
for (int i = 0; i < 30; i++) {
if (a[29][i] > max)
max = a[29][i];
if (a[29][i] < min)
min = a[29][i];
}
// 用long取整
System.out.println((long) (2086458231 / min * max));
}
}
答案是:72665192664