chekirisalina
26.02.2021 00:48

В компании Х иерархическая структура: У директора руководителей нет.
У каждого сотрудника (кроме директора) есть единственный непосредственный руководитель.
От каждого сотрудника (кроме директора), если двигаться по цепочке руководителей, можно дойти до директора.
Первым шагом анализа структуры компании было решено определить, сколько у каждого сотрудника руководителей:

У директора количество руководителей равно 0.
Для каждого сотрудника количество руководителей равно 1 + «количество руководителей у непосредственного руководителя».
Зная структуру компании, определите количество руководителей у каждого из сотрудников.

Формат ввода
В первой строке записано целое число
n
(
1

n

2
0
0
0
0
0
) — количество сотрудников в компании. Во второй строке записаны
n
целых чисел
p
i
(
0

p
i

n
) — руководитель
i
-го сотрудника.
У директора
p
i
=
0
, т.е. у
i
-го сотрудника нет руководителя.
Гарантируется, что структура удовлетворяет условию задачи.

Формат вывода
Выведите
n
целых чисел
d
i
(
0

d
i
<
n
), количество руководителей у
i
-го сотрудника, в порядке нумерации сотрудников.
Пример 1
Ввод Вывод
5
0 1 2 3 4
0 1 2 3 4

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
милаха3451
31.05.2021 16:35

По условию данной нам задачи сказано, что общее число купленных персиков равно неизвестной а, также после покупки количества а персиков мы убираем от количества а количество b персиков, так как они оказались ещё зелёными. Следовательно у нас имеется количество съедобных персиков равны а - b. По условию задачи дано, что количество съедобных персиков было разделено поровну между четырьмя детьми. То есть мы количество а - b делим на четыре и получаем количество персиков которое получил каждый из детей.

ответ : каждый получил ( а - b ) / 4 персиков

0,0(0 оценок)
Ответ:
katmoxie
12.07.2020 17:55

#include <stdio.h>

#include <stdlib.h>

#include <time.h>

int main()

{

   int *arr;

   int x, y, i, j, sum = 0, min = 0, minstr = 0;

   srand(time(NULL));

   x = 2 + rand() % 10;

   y = 2 + rand() % 6;

   arr = (int*)malloc(x*y*sizeof(int));

   printf("Array %d x %d: \n", x, y);

   for (i = 0; i < x; i++){

       for (j = 0; j < y; j++){

           *(arr + i*y + j) = -50 + rand() % 100;

           printf("arr[%d][%d] = %3d; ", i, j, *(arr + i*y + j));

       }

       printf("\n");

   }

   for (i = 0; i < y; i++)

       min += *(arr + i);

   minstr = 0;

   for (i = 1; i < x; i++){

       for (j = 0; j < y; j++)

           sum += *(arr + i*y + j);

       if (sum < min) {

           min = sum;

           minstr = i+1;

       }

       sum = 0;

   }

   printf("Minimum amount: %d (%d line)", min, minstr);

   free(arr);

   return 0;

Объяснение:

это пример как делать

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