М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
NyushaLove
NyushaLove
28.09.2020 04:06 •  Информатика

Надо

билеты на поезд
даниил организует поездку школьников на олимпиаду по программированию. поезд, на котором планируется добраться до места проведения олимпиады, уже выбран; осталось лишь купить билеты. на данный момент свободные места остались в n купе, притом в i-м из этих купе свободно ровно ai мест.

чтобы школьникам было нескучно, им была предоставлена возможность объединиться в пары или тройки, которые будут ехать в одном купе. всего k2 пар и k3 троек школьников изъявили желание путешествовать в одном купе. оставшиеся k1 школьников не высказали никаких предпочтений. все эти школьники различны, то есть всего на олимпиаду поедет k1 + 2×k2 + 3×k3 школьников.

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

формат входных данных
первая строка содержит одно целое число t (1 ≤ t ≤ 100) — количество тестов. далее следует описание t тестов. каждый из тестов описывается тремя строками.

первая строка описания теста содержит одно целое число n (1 ≤ n ≤ 105) — количество оставшихся купе.

вторая строка описания теста содержит n целых чисел a1, a2, …, an (1 ≤ ai ≤ 4) — количества свободных мест в оставшихся купе.

третья строка описания теста содержит три целых числа k1, k2 и k3 (0 ≤ ki ≤ 4×105) — количество школьников, которые не высказали никаких предпочтений, а также количество пар школьников и количество троек школьников, желающих быть в одном купе, соответственно.

гарантируется, что сумма всех n не превосходит 105.

формат результата
выведите t строк, i-я из которых содержит «yes», если в i-м тесте возможно купить билеты, удовлетворив все пожелания, и «no» в противном случае.

примеры
входные данные
2
2
3 4
1 1 1
2
3 4
1 2 1
результат работы
yes
no
входные данные
3
1
2
0 1 0
5
4 3 1 4 1
2 4 1
4
1 4 3 2
0 0 3
результат работы
yes
yes
no
примечания
в первом тесте первого примера школьника-одиночку и пару школьников можно посадить во второе купе, а тройку — в первое. во втором тесте первого примера купить билеты, удовлетворив все пожелания, не выйдет, потому что всего осталось 3 + 4 = 7 билетов, а школьников 1 × 1 + 2 × 2 + 1 × 3 = 8.​

👇
Открыть все ответы
Ответ:
koptevartem050
koptevartem050
28.09.2020

// Массив из "a" заполнил псевдорандомными числами от 0 до 3 для наглядности

using System;

namespace ConsoleApp1

{

   internal class Program

   {

       private static void Main()

       {

           const int numsCount = 24;

           const int resCount = 10;

           double[] nums = new double[numsCount];

           double[] res = new double[resCount];

           var rand = new Random();

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

           {

               nums[i] = rand.Next(0, 4);

               Console.WriteLine($"a[{i}] = {nums[i]}");

           }

           Console.WriteLine();

           for (int i = 1; i <= resCount; i++)

           {

               double sum = 0;

               for (int j = 0; j < numsCount; j++)

                   sum += Math.Pow(nums[j], i);

               res[i - 1] = sum;

               Console.WriteLine($"b[{i - 1}] = {sum}");

           }

           Console.ReadLine();

       }

   }

}


Нужно написать программу в с# либо исправить мой код, который работает некорректно, Все как в услови
Нужно написать программу в с# либо исправить мой код, который работает некорректно, Все как в услови
4,5(26 оценок)
Ответ:
linda310384
linda310384
28.09.2020

#include <iostream>

using namespace std;

signed main(){

   int l, r;

   cin >> l >> r;

   if(l > r)

       swap(l,r);

   cout << "1) ";

   for(int i = l; i <= r; i++) cout << i << " ";

   cout << "\n2) ";

   for(int i = r; i >= l; i--) cout << i << " ";

   cout << "\n3) ";

   for(int i = l; i <= r; i++) if(i % 7 == 0) cout << i << " ";

   cout << "\n4) ";

   int cnt = 0;

   for(int i = l; i <= r; i++) cnt += (i % 5 == 0);

   cout << cnt;

}

P.S. если это "задание со звездочкой", то страшно подумать, что там без нее

4,4(49 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ