Форум программистов, компьютерный форум, киберфорум
JavaScript для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.63/35: Рейтинг темы: голосов - 35, средняя оценка - 4.63
3 / 3 / 1
Регистрация: 26.12.2019
Сообщений: 170

Межцивилизационный телеграф

08.09.2021, 22:50. Показов 7268. Ответов 41

Студворк — интернет-сервис помощи студентам
Гуманоид Коля хочет как можно быстрее и громче передать сигнал Ксеноморфу Васе на другую планету. Ксеноморфы не умеют читать на языке Коли, и Вася не исключение, поэтому придется использовать специальную Ксеноморфную азбуку из 9 символов.

Передача каждого символа Ксеноморфов не бесплатна и стоит сколько-то динаров. Количество динаров у Коли и стоимость передачи каждого символа будут известны в межпланетном телеграфном пункте.

Коля не сильно понимает значения символов Ксеноморфов, но почему-то считает, что чем большим будет кол-во и разнообразие отправленных символов, и чем большее количество динаров заплатит за их передачу — тем быстрее Вася получит сигнал.

Помогите Коле найти такие индексы символов, соединив которые конкатенацией мы получим максимальное число, при этом потратив максимальное кол-во динар. Индекс — число от 1 до 9. Ответ ожидается в виде строки с индексами, которые могут повторяться.

Примеры

Пример 1

Ввод
[5,[5,4,3,2,1,2,3,4,5]]
Вывод
"55555"

Пример 2

Ввод
[2,[9,11,1,12,5,8,9,10,6]]
Вывод
"33"
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.09.2021, 22:50
Ответы с готовыми решениями:

Телеграф
«Телеграф»: Разработайте программу для перевода с естественного языка в азбуку Морзе и обратно. 7.1. Английский. 7.2. Русский.

Программа телеграф.
Помогите решить задачку... Написать программу телеграф, которая принимает от пользователя сообщение и выводит на экран в виде...

старый телеграф
пожалуйста помогите написать прогу на языке си в ворланде си ++ фо дос Старый телеграф. Читать посимвольно исходный файл, переписывая...

41
 Аватар для Tavashi
1172 / 762 / 194
Регистрация: 21.05.2016
Сообщений: 1,858
13.09.2021, 17:28
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от t1mmz Посмотреть сообщение
>_<, как ожидаемое значение в моем тестовом стенде - это просто не желание забивать лог длинными ответами.
Ох ...
Цитата Сообщение от t1mmz Посмотреть сообщение
В выводе выше Correct Algorithm
Попробуйте так:
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
function telegraph(money, costs) {
  const
    o = costs.reduce((acc, n, i, a) => (
      acc.tmp = (i+1).toString().repeat(Math.trunc(money / n)),
      +acc.max <= +acc.tmp && n <= money && (acc.iMax = i, acc.max = acc.tmp),
      i === a.length-1 && acc.max < 0 && (acc.max = ''),
      i === a.length-1 && (acc.max += '', acc.diff = money % acc.max.length),
      acc
    ), {max: -Infinity, iMax: -1, diff: -1, tmp: -1}),
    
    dupValsIndexes = costs.reduceRight((acc, n, i) => (
      n === costs[o.iMax] && acc.push(i),
      acc
    ), []);
  
  let res = o.max;
  if (o.diff) { 
    for (let i = o.iMax; i < costs.length; i++) {
      if (costs[o.iMax] === costs[i]-o.diff) {
        res = (i+1) + o.max.substring(1, costs.length);
      }
    }
  }
  
  if (dupValsIndexes.length <= res.length) {
    let diff = res.length - dupValsIndexes.length,
        tmp = '';
    for (let i = dupValsIndexes.length-1, j = 0; i >= 0; i--, j++) {
        tmp += dupValsIndexes[j]+1;
    }
    if (diff) {
        res = res.substring(0, diff) + tmp;
    }
  }
  
  return res;
}
1
3 / 3 / 0
Регистрация: 11.09.2021
Сообщений: 15
14.09.2021, 08:53
Цитата Сообщение от Tavashi Посмотреть сообщение
Попробуйте так:
Теперь на моих тестах работает без ошибок. На реальных тестах пусть проверяют, те, кто еще сдал

Лог теста

Input: [19, [15,16,16,10,17,11,19,15,11]]
Expected result: "9"

Correct Algorithm: OK
tavashi_v6: OK
tavashi_v7: OK
-------------------

Input: [20, [21,3,13,3,17,3,3,4,5]]
Expected result: "977642"

Correct Algorithm: OK
tavashi_v6: OK
tavashi_v7: OK
-------------------

Input: [20, [21,3,13,3,3,3,3,4,5]]
Expected result: "976542"

Correct Algorithm: OK
tavashi_v6: OK
tavashi_v7: OK
-------------------

Input: [20, [21,3,13,5,3,4,5]]
Expected result: "755552"

Correct Algorithm: OK
tavashi_v6: OK
tavashi_v7: OK
-------------------

Input: [386, [11,7,11,7,11,7,11,7,5]]
Expected result: "999999999999999999999999999999999999999 99999999999999999999999999999999999999"

Correct Algorithm: OK
tavashi_v6: FAIL. Result "1e+79" is wrong
tavashi_v7: OK
-------------------

Input: [1002, [11,7,13,7,7,7,7,11,13]]
Expected result: "777777777777777777777777777777777777777 7777777777777777777777777777777777777777 7777777777777777777777777777777777777777 777777777777777777776542"

Correct Algorithm: OK
tavashi_v6: FAIL. Result "7.77777777777777876542" is wrong
tavashi_v7: OK
-------------------

----- DONE -----
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.09.2021, 08:53
Помогаю со студенческими работами здесь

Телеграф - исправить ошибку в коде
Program_telegraph; Uses Crt Const Morse: array of = ( '.-` , `-...' , '.---` , `--/.` , {А, Б, В, Г} '-.. ` , `. `, '...-' ,...

Как написать программу-телеграф?
Помогите плиз Написать программу-телеграф,которая принимает от пользователей сообщение и выводит его на экран в виде последовательности...

Азбука Морзе, программа-телеграф
программа-телеграф, которая принимает от пользователя сообщение и выводит его на экран в виде последова-тельности точек и тире. Вывод точек...

Программа телеграф на турбо паскале можно на фри
Написать программу – телеграф, который принимает от пользователя сообщения и выводит его на экран в виде последовательности точек и тире....

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


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
42
Ответ Создать тему
Новые блоги и статьи
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK сделайте это, JDK, то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Перейдите по ссылке:. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru