elenalusia
?>

Первая строка выходных данных содержит максимальную возможную сумму, вторая — маршрут, на котором достигается эта сумма. Маршрут выводится в виде последовательности, которая должна содержать N−1 букву D, означающую передвижение вниз и M−1 букву R, означающую передвижение направо. Если таких последовательностей несколько, необходимо вывести ровно одну (любую) из них.

Информатика

Ответы

deputy810
Не самый лёгкий, но работающий

const  n = 10000;//Не изменяемая по ходу программы переменная
var  a: array[1..n] of integer;  b: array[1..10]of integer;  c: array[1..10]of integer;  i, s, v: integer;
begin  for i := 1 to 10 do //Заполнение массива с числами от 1 до 10    c[i] := i;  for i := 1 to n do //Заполнение массива    a[i] := random(10) + 1; //Делается для того чтобы в массиве не было нулей  for i := 1 to n do    case a[i] of      1: b[1] := b[1] + 1;      2: b[2] := b[2] + 1;      3: b[3] := b[3] + 1;      4: b[4] := b[4] + 1;      5: b[5] := b[5] + 1;      6: b[6] := b[6] + 1;      7: b[7] := b[7] + 1;      8: b[8] := b[8] + 1;      9: b[9] := b[9] + 1;      10: b[10] := b[10] + 1;    End;    for i := 1 to 10 do    for s := 1 to 9 do      if b[s] > b[s + 1] then begin        v := b[s];        b[s] := b[s + 1];        b[s + 1] := v;        v := c[s];        c[s] := c[s + 1];        c[s + 1] := v;      end;  writeln(c[10], ' - их ', b[10]);    end.
supercom-ru-marinaguseva4267

/*

   Методов решения много, самый но длинный - это switch ... case..

   Можно было использовать map из STL

*/

#include <iostream>

#include <vector>

#include <sstream>

using namespace std;

int main()

{

   int number;

   cin>>number;

   switch (number){

   case 1:

       cout<<"Понедельник\n";

       break;

   case 2:

       cout<<"Вторник\n";

       break;

   case 3:

       cout<<"Среда\n";

       break;

   case 4:

       cout<<"Четверг\n";

       break;

   case 5:

       cout<<"Пятница\n";

       break;

   case 6:

       cout<<"Суббота\n";

       break;

   case 7:

       cout<<"Воскресенье\n";

       break;

   default:

       cout<<"Нет дня недели под этим номером";

   }

   return 0;

}

Краткий гайд:

number - переменная, отвечает за номер дня неделиswitch - case - оператор множественного выбора. Подробнее читаем на cppstudio.com, cppreference.com или других порталах

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Первая строка выходных данных содержит максимальную возможную сумму, вторая — маршрут, на котором достигается эта сумма. Маршрут выводится в виде последовательности, которая должна содержать N−1 букву D, означающую передвижение вниз и M−1 букву R, означающую передвижение направо. Если таких последовательностей несколько, необходимо вывести ровно одну (любую) из них.
Ваше имя (никнейм)*
Email*
Комментарий*