Вложенность коробок - C (СИ)

Формулировка задачи:

На столе лежат две коробки размерами A1xB1xC1 и A2xB2xC2. Выяснить, возможно ли одну из этих коробок поставить в другую, если разрешено повороты коробок через любое ребро на угол 90 градусов. Входные данные С клавиатуры вводятся целые числа A1, B1, C1 и A2, B2, C2. Все числа натуральные и не больше 1000. Выходные данные На экран выводится одно число:
  • 0 - если коробки равные,
  • 1 - если вторую нужно поместить в первую,
  • 2 - если первую нужно поместить во вторую,
  • -1 - иначе
Решение:
#include <stdio.h>
#include <stdlib.h>
 
int variants[6][3];
 
int main()
{
    int a1, b1 ,c1;
    int a2, b2, c2;
    int temp, out, i;
 
    out = 100;
 
    scanf("%d %d %d", &a1, &b1, &c1);
    scanf("%d %d %d", &a2, &b2, &c2);
 
    temp = (a1+b1+c1) - (a2+b2+c2);
    if(temp > 0) out = 1;
    if(temp < 0) out = 2;
 
    if(a1 == a2 && b1 == b2 && c1 == c2) {
        out = 0;
    }
 
    if(out == 100) {
        out = -1;
        fill(a1, b1, c1);
 
        for(i = 1; i < 4; i++) {
            if(variants[i][1] == a2 && variants[i][2] == b2 && variants[i][3] == c2) {
                out = 0;
                break;
            }
        }
    }
 
    printf("%d", out);
    return 0;
}
 
void fill(a, b, c) {
    variants[1][1] = b;
    variants[1][2] = a;
    variants[1][3] = c;
 
    variants[2][1] = c;
    variants[2][2] = a;
    variants[2][3] = b;
 
    variants[3][1] = c;
    variants[3][2] = b;
    variants[3][3] = a;
}
Решение проходит не все проверочные тесты, что может быть упущено?

Код к задаче: «Вложенность коробок - C (СИ)»

textual
temp = (a1+b1+c1) - (a2+b2+c2);
 if(temp > 0) out = 1;
 if(temp < 0) out = 2;
Эта работа вам не подошла?

Вы всегда можете заказать любую учебную работу у наших авторов от 20 руб.

5   голосов, оценка 4.600 из 5


СДЕЛАЙТЕ РЕПОСТ
Похожие ответы
Для поиска решения или похожих решений вы можете воспользоваться "Поиском по сайту" или "Поиском по разделу"
Поиск по сайту