алан62
03.12.2020 07:45

школьный этап Всероссийской олимпиады по информатике 2020 года седьмой восьмой класс второе задание треугольник​

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Нэтэли11
17.08.2022 14:00
// PascalABC.NET 3.1, сборка 1219 от 16.04.2016
begin
  var a:=ReadLines('m17.txt').JoinIntoString.ToIntegers;
  a.Println;
  var b:=a.Select((x,i)->Rec(x,i)).Where(x->x.Item1<0)
    .Select(x->x.Item2).ToArray;
  if b.Count<>2 then
    Writeln('Количество отрицательных элементов не равно двум')
  else begin
    a:=SeqFill(b[0],0).Concat(a.Skip(b[0]).Take(b[1]-b[0]+1))
      .Concat(SeqFill(a.Length-b[1]-1,0)).ToArray;
    a.Println
    end
end.

Тестовое решение:
23 14 7 15 0 13 -6 41 18 13 8 42 27 -11 3 19 10
0 0 0 0 0 0 -6 41 18 13 8 42 27 -11 0 0 0

Файл с исходными данными имеет имя m17.txt. Тестовый файл находится во вложении. Разбивка на строки сделана по 5 значений, но может быть совершенно произвольной. Также нет привязки именно к 17 числам, главное - чтобы отрицательных чисел было ровно два, иначе будет выдано сообщение о их неверном количестве.
0,0(0 оценок)
Ответ:
danmin444
23.08.2022 17:29

Программа написана на из 100, но пока это лучший результат, язык Python

a = int(input())

b = int(input())

if (a + b) % 3 != 0:

  print(-1)

elif (a + b)/3 > a or (a + b)/3 > b:

  print(-1)

elif (a + b)/3 == a:

  print(0)

  print((a + b)/3)

elif (a + b)/3 == b:

  print((a + b)/3)

  print(0)

else:

  if a > b:

      print(int(((a + b)/3)- (((a + b)/3)-(a - b

      print(int(((a + b)/3)-(a - b)))

  if b > a:

      print(int(((a + b)/3)- (((a + b)/3)-(b - a

      print(int(((a + b)/3)-(b - a)))

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота