Dasharozzz321
07.12.2020 17:06

Дан одномерный массив. Запиши верный ответ. (Считай индексы элементов массива начиная с 1.)

−19 22 0 −2 4 15

Значение элемента массива — −2.
Индекс элемента массива —

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Саня111178
17.04.2022 04:07

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

a, b : array [1..n] of integer;

i, max, min, p, imax, imin : integer;

begin

randomize;

writeln('исходный массив a[]:');

for i := 1 to n do

begin

a[i] := random(50) - 25;

write(a[i]:8)

end;

writeln;

{формируем и выводим новый}

{сразу осуществляем поиск максимума и минимума}

max := -1000; min := 1000;

writeln('новый массив b[]:');

for i := 1 to n do

begin

b[i] := a[i] * a[i] * a[i];

write(b[i]:8);

if b[i] > max then

begin

imax := i;

max := b[i]

end;

if b[i] < min then

begin

imin := i;

min := b[i]

end

end;

writeln;

{считаем произведение и выводим результаты}

p := max * min;

writeln('максимальный элемент нового массива - b[', imax, '] = ', max);

writeln('минимальный элемент нового массива - b[', imin, '] = ', min);

writeln('их произведение = ', p);

readln

end.

0,0(0 оценок)
Ответ:
polikarpova05
19.03.2022 13:26

#include <iostream>

typedef long long   ll;

using namespace std;

bool ll_is_valid(ll t, ll N, ll x, ll y)

{

return  t / x + (t - x) / y >= N;

}

ll f(ll N, ll x, ll y)

{

   ll R = 1;

   while (!ll_is_valid(R,N,x,y)) R *= 2;

ll L = R / 2;

while(R - L > 1)

{

 ll M   =   (L + R) / 2;

 

 if (!ll_is_valid(M,N,x,y)) {L = M;}

 else {R = M;}

}

return  R;

}

int  main()

{

ll N,x,y;

cin >> N >> x >> y;

if(x > y) swap( x, y );  

cout << f(N, x, y) <<  std::endl;

}

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