На столе две коробки.
Первый блок имеет размер X1 x Y1 x Z1
, а второй блок имеет размер X2 x Y2 x Z2
.
Вам необходимо определить, какую коробку можно поместить в другую коробку. Вы можете вращать оба поля, как вы хотите.
Вход содержит две строки. Первая строка содержит числа X1, Y1, Z1
, вторая строка содержит числа X2, Y2, Z2
. Все числа целые числа и больше 0.
«Box 1 = Box 2»
. «Box 1 <Box 2»
.«Box 1> Box 2»
.«Incomparable»
. import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt();
int b = scanner.nextInt();
int c = scanner.nextInt();
int a1 = scanner.nextInt();
int b1 = scanner.nextInt();
int c1 = scanner.nextInt();
if (((a + b + c) == (a1 + b1 + c1)) & ((a == a1 | a == b1 |
a == c1) & (b == a1 | b == b1 | b == c1) & (c == a1 |
c == b1 | c == c1))) {
System.out.println("Box 1 = Box 2");
} else if (((a + b + c) < (a1 + b1 + c1)) & ((a < a1 | a <
b1 | a < c1) & (b < a1 | b < b1 | b < c1) & (c < a1 |
c < b1 | c < c1))) {
System.out.println("Box 1 < Box 2");
} else if (((a + b + c) > (a1 + b1 + c1)) & ((a > a1 | a >
b1 | a > c1) & (b > a1 | b > b1 | b > c1) & (c > a1 |
c > b1 | c > c1))) {
System.out.println("Box 1 > Box 2");
} else if ((a > a1 | a >= b1 | a >= c1) & (b > a1 | b >= b1
| b >= c1) & (c > a1 | c >= b1 | c >= c1)) {
System.out.println("Incomparable");
}
}
}
Все не так, ребята. Зачем суммы?
Упорядочите тройки чисел по возрастанию. А потом сравнивайте поэлементно.
Одна коробка помещается в другую, если каждый элемент из упорядоченного списка размеров первой коробки (строго?) меньше соответствующего элемента из упорядоченного списка размеров второй коробки.
P.S. И нет никакой необходимости использовать полное вычисление булевских выражений.
Прошло такое решение. Что в нем можно улучшить?
Arrays.sort(arr1);
Arrays.sort(arr2);
int eq = 0, ge = 0, le = 0;
for (int i = 0; i < arr1.length; i++) {
eq = eq + (arr1[i] == arr2[i]? 1 : -1);
ge = ge + (arr1[i] >= arr2[i]? 1 : -1);
le = le + (arr1[i] <= arr2[i]? 1 : -1);
}
if (eq == arr1.length) {
System.out.println("Box 1 = Box 2");
} else if (ge == arr1.length) {
System.out.println("Box 1 > Box 2");
} else if (le == arr1.length) {
System.out.println("Box 1 < Box 2");
} else {
System.out.println("Incomparable");
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Приложение на spring4+spring-quartz
Изучаю Spring и вот хочу реализовать работу с методами внешнего API
Нужно сделать параметризованный класс, хранящий массив, с некоторой функциональностью ArrayList в виде функций add(T el), remove(int index), get(int index)