kotuk333
04.06.2020 18:03

Нужно написать код на python.
сколь­ко вре­ме­ни потре­бу­ет­ся про­грам­ми­сту, что­бы запи­лить весь проект?

в рабо­те у про­грам­ми­ста есть про­ект, в кото­ром нуж­но пофик­сить три бага и доба­вить три фичи. за час про­грам­мист может пофик­сить 1–2 бага или доба­вить 1–2 фичи. но он посто­ян­но отвле­ка­ет­ся на фору­мы и соц­се­ти, поэто­му каж­дый час рабо­та идёт так:

если он пофик­сит один баг, то выле­зут два новых.
если он пофик­сит за час сра­зу два бага, то в тре­ке­ре появит­ся зада­ние сде­лать ещё одну новую фичу, и не факт, что она вой­дёт в финаль­ный релиз.
если он доба­вит одну фичу, то в тре­ке­ре появит­ся запись, что ему обя­за­тель­но нуж­но доба­вить ещё одну фичу, но попро­ще, и без это­го про­ект не сдать.
и толь­ко если он за час доба­вит сра­зу две фичи, то новых не при­ба­вит­ся.
сколь­ко мини­маль­но вре­ме­ни потре­бу­ет­ся про­грам­ми­сту, что­бы сдать про­ект без багов и с пустым тре­ке­ром ?

решение
един­ствен­ное дей­ствие, при кото­ром не появ­ля­ет­ся новых багов и фич — это когда про­грам­мист за час добав­ля­ет сра­зу две фичи. полу­ча­ет­ся, что для успеш­но­го завер­ше­ния нуж­но сде­лать чёт­ное коли­че­ство фич под­ряд — 2, 4, 6, 8 или что-то подоб­ное.

полу­ча­ет­ся, что зада­ча про­грам­ми­ста — сво­и­ми дей­стви­я­ми как мож­но быст­рее прий­ти к тому, что­бы в про­ек­те оста­лись нена­пи­сан­ны­ми толь­ко фичи и что­бы их чис­ло дели­лось на 2. на стар­те ему нуж­но сде­лать 3 фичи, зна­чит, новая цель — из трёх багов полу­чить нечёт­ное коли­че­ство фич- в тре­ке­ре. в ито­ге это даст про­грам­ми­сту их чёт­ное коли­че­ство, и он их попар­но выпол­нит.

нечёт­ное коли­че­ство фич — это 1, 3, 5 и так далее. если мы закро­ем сра­зу два бага, то это даст нам толь­ко одну новую фичу в тре­ке­ре, и оста­нет­ся ещё один баг. дела­ем это за пер­вый час:

исход­ные дан­ные: 3 бага, 3 фичи.

час 1: 1 баг, 4 фичи (пофик­си­ли 2 бага, полу­чи­ли +1 фичу в тре­ке­ре).

у нас появи­лось чёт­ное коли­че­ство фич, кото­рые мож­но сра­зу попар­но закрыть. тра­тим ещё 2 часа.

час 2: 1 баг, 2 фичи (реа­ли­зо­ва­ли сра­зу 2 фичи, новых зада­ний не появи­лось).

час 3: 1 баг (реа­ли­зо­ва­ли сра­зу 2 фичи, новых зада­ний не появи­лось).

уже хоро­шо. теперь един­ствен­ное, что оста­ёт­ся про­грам­ми­сту — отра­бо­тать этот баг.

час 4: 2 бага (пофик­си­ли 1 баг, полу­чи­ли 2 новых).

а вот тут мож­но попасть в ловуш­ку, если сра­зу пофик­сить 2 бага и полу­чить фичу. дело в том, что если оста­ёт­ся толь­ко одна фича, то после её выпол­не­ния в тре­ке­ре появ­ля­ет­ся запись, что нуж­но сде­лать ещё одну. полу­ча­ет­ся бес­ко­неч­ный цикл. зна­чит, нам нуж­но фик­сить по одно­му багу по оче­ре­ди.

час 5: 3 бага (пофик­си­ли 1 баг, полу­чи­ли 2 новых).

ага, у нас уже 3 бага, а это зна­чит, что мож­но сде­лать одно­вре­мен­но 2 из них, и не попасть потом в замкну­тый круг. про­ве­рим.

час 6: 1 баг, 1 фича (пофик­си­ли 2 бага, полу­чи­ли +1 фичу в тре­ке­ре).

но мы уже встре­ча­ли ситу­а­цию, когда был толь­ко один баг, и зна­ем, как из него полу­чить 2, а из двух — фичу. дела­ем.

час 7: 2 бага, 1 фича (пофик­си­ли 1 баг, полу­чи­ли 2 новых).

час 8: 2 фичи (пофик­си­ли 2 бага, полу­чи­ли +1 фичу в тре­ке­ре).

и сно­ва появи­лось чёт­ное коли­че­ство фич, кото­рые нуж­но сде­лать. закры­ва­ем про­ект финаль­ным шагом.

час 9: всё сде­ла­но (реа­ли­зо­ва­ли сра­зу 2 фичи, новых зада­ний не появи­лось).

ответ: про­грам­ми­сту потре­бу­ет­ся мини­мум 9 часов.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Irinaytsn
19.02.2023 10:15

Задача1

массив определи как array[];

чтобы посчитать, просто используй счетчик, но сначала инициализируй переменную, которая содержит ответ задачи:

int n;

array [n];

int answer;

for (i=0, i < n, i++)

{

     if (array[i] == 2)

         answer++;

std::cout<<answer;

Как то так

 

Задача2 

 

array[n];

 

 

for (int i =1, i < n, i++)

{

 if (array[0] >= array[i])

    array[0] = array[i];

}

std::cout << array[0];

//Это было решение первого пункта

int first;

int last

bool positive;

while (positive == false )

{

   for (int i = 0; i < n; i++)

     {

        if (array[i] > 0)

        {

          positive = true;

          first = i;

          array[i] = -1;

      }

}

while (positive == false )

{

   for (int i = 0, i < n, i++)

     {

        if (array[i] > 0)

        {

          positive = true;

          last = i;

      }

}

 

 

int summ

for (int i = first, i < last, i++)

{

  summ += array[i];

}

 std::cout<<summ; // ответ на 2 пункт

// ПРеобразую

newarray [n];

int a = 0;

for (int i = 0, i < n, i++)

{      

 if (array[i] == 0)  

   {      

newarray[a] = array[i];      

 a++;      

    }  

for (int i = 0, i < n, i++)

{    

     if (array[i] != 0)    

         {        

          newarray[a] = array[i];

         a++;

        }

}

std::cout<< newarray;

0,0(0 оценок)
Ответ:
shydik37
25.04.2020 14:08
Печально, придется придумывать, а фантазия иногда ведет не в ту стпень, но не суть.
Лично мне кажется что неплохо было бы хранить в БД под названием погода информацию относительно погоды, скажем гидромежцентра или как его там а значит объектами будут - температура влажность ветер дождь и тд если бы я ее проектировал то в качестве ключа выбрал бы дату, потому как она явно уникальна и прогнозы идут каждый день
далее успеваемость - допустим успеваемость студента в универе, а значит неплохо бы в качестве объектов задать предметы по которым интересует успеваемость(обычно все) в качестве ключа можно взять любой уникальный идентификатор, хоть серию в паспорте хоть ИНН, но рас уж у нас универ пусть будет номер студенческого билета, или зачетной книжки
и наконец факультативы - нужен перечень всех факультативов(причем не важно посещает все или не посещает ни одного), не слышал чтобы в школах были факультативы, так что предположу что учебное заведение чуть чуть повыше а значит в качестве ключа так же подойдет номер студ билета
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота