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

Один древнеримский торговец брал несколько раз ссуду в древнеримском банке. каждый раз банкир записывал размер выданной ссуды на листе пергамента, используя римские числа. но ввиду дороговизны пергамента запись производилась плотно и все числа оказались записанными подряд, без разделителей. когда торговец пришёл возвращать ссуду, оказалось, что невозможно установить разбиение записи на отдельные числа. например, если на пергаменте записана строка «xiiv», её можно разбить на римские», её можно разбить на римские числа разными например, xi + iv», её можно разбить на римские = 11 + 4 = 15 или xii + v», её можно разбить на римские = 12 + 5 = 17, возможны и другие варианты разбиения. торговец хочет вернуть как можно меньше денег, поэтому он хочет разбить строку цифр на корректные римские числа так, чтобы сумма всех чисел была как можно меньше. вам необходимо решить для следующих пяти строк. vxivvix cxlvlxc xixcxixl xcmlxcd vlmixcd запишите в ответе пять чисел (арабскими цифрами в десятичной системе счисления), каждое число в отдельной строке – ответы для данных пяти строк точно в таком же порядке. например, для строки «xiiv», её можно разбить на римские» ответом будет число 15. если вы не можете дать ответ для какой-либо строки, напишите в ответе для этой строки число 0. правила записи римских чисел цифра тысячи сотни десятки единицы 1 m c x i 2 mm cc xx ii 3 mmm ccc xxx iii 4 cd xl iv 5 d l v 6 dc lx vi 7 dcc lxx vii 8 dccc lxxx viii 9 cm xc ix римскими цифрами можно записать целые числа от 1 до 3999. число представляется в виде суммы тысяч, сотен, десятков и единиц. далее из следующей таблицы берётся по одному элементу, соответствующему тысячам, сотням, десяткам, единицам ровно в таком порядке. если число тысяч, сотен, десятков, единиц равно 0, то из соответствующего столбца ничего не берётся. например, число 1990 записывается, как 1000 + 900 + 90 = mcmxс.

👇
Ответ:
11111269
11111269
18.02.2023

аххаххахах  кто то олимпиаду пишет

4,5(87 оценок)
Ответ:
soz2019oy63um
soz2019oy63um
18.02.2023

L, ls, res = ({'I': 1, 'V': 5, 'X': 10, 'L': 50, 'C': 100, 'D': 500, 'M': 1000},

        ['CD', 'XL', 'IV', 'CM', 'XC', 'IX'], 0)

# L -- словарь значений римских цифр

# ls -- Все сочетания "неполных чисел"



a = input()


for i in ls:

# Умножаем их количество на цену в L


res += a.count(i) * (-1 * L[i[0]] + L[i[1]])


a = a.replace(i, '') # Убираем из строки, досчитывая остальные числа


# Подсчитываем оставшиеся  

for i in a:


res += L[i]


print(res)


Пример кода на Python 3.6.6.

4,8(7 оценок)
Открыть все ответы
Ответ:
bigzaur777
bigzaur777
18.02.2023
//Pascal ABC.NET v3.1 сборка 1172

Var
 ar:array of integer;
 n,i,min,mini:integer;
begin
randomize;
min:=2147483647;
 writeln('Введите размерность:');
 readln(n);
 setlength(ar,n);
 writeln('Array:');
  for i:=0 to n-1 do
   begin
    ar[i]:=random(-30,30);
    write(ar[i]:4);
    if min>=ar[i] then
     begin
      min:=ar[i];
      mini:=i;
     end;
   end;
  for i:=0 to mini-1 do
   if ar[i]<0 then ar[i]:=0;
 writeln;
 writeln('Final array:');
  for i:=0 to n-1 do
   write(ar[i]:4);
end.

Пример ввода:
5
Пример вывода:
Array:
  -3 -26  -2  18 -21
Final array:
   0 -26  -2  18 -21
4,5(10 оценок)
Ответ:
Yaroslav483
Yaroslav483
18.02.2023
Максимальное число, составленное из утроенного произведения цифр  будет 
9*3*N  -  не  может быть больше 54,  т.е.  
N может быть только 1 или 2.  По условию х>=10  ->  N=2  (N -порядок числа).
Поэтому искать нужно среди чисел от 11 до 54.  Решение - число 15.

var n,m: integer;
begin
  write('n = ');  readln(n);
  if n=2 then
  begin    m:=11;
    repeat
      if (m mod 10)*(m div 10)*3=m then
      begin
        writeln('число:  ',m);
        m:=55;
      end;
      m:=m+1;
    until m>54;
  end
  else  writeln('нет решения');
end.
4,5(34 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ