Форум программистов, компьютерный форум, киберфорум
Информатика
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/25: Рейтинг темы: голосов - 25, средняя оценка - 4.56
0 / 0 / 0
Регистрация: 22.11.2014
Сообщений: 6

Олимпиадная задача по информатике

22.11.2014, 20:38. Показов 5280. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите с задачей!

[Программа для робота]

Хемуль программирует робота, который может передвигаться по квадратному полю. Поле разбито на равные квадратные клетки так, что длина каждой стороны поля – ровно M клеток. Со свойственной ему педантичностью, Хемуль пронумеровал все клетки поля, присвоив каждой клетке уникальный номер. Поскольку робот Хемуля может передвигаться только в пределах поля, Хемуль решил записывать программу для управления роботом как набор номеров клеток в порядке, в котором робот должен их посетить, используя для записи каждого номера одинаковое минимально возможное количество бит. Никакой дополнительной информации кроме этой последовательности номеров программа Хемуля не содержит.

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

Снорк выбрал маршрут, в котором робот последовательно посещает 32 клетки, включая начальную и конечную клетку маршрута, и сравнил записи своей программы и программы Хемуля, описывающих этот маршрут. В результате сравнения Снорк обнаружил, что для хранения его программы требуется на 341 бит меньше, чем для хранения программы
Хемуля.

Определите, при каком максимальном размере поля это возможно. В ответе укажите одно целое число M – количество клеток по одной из сторон поля.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.11.2014, 20:38
Ответы с готовыми решениями:

Олимпиадная задача по информатике
Снусмумрику очень нравятся красивые числа. Больше всего его привлекают числа-палиндромы, то есть такие числа, которые читаются одинаково...

Олимпиадная задача по информатике
На рисунке представлено монохромное изображение. Каждый пиксель изображения (маленький квадратик) – это 1 бит. Если бит имеет значение 0 –...

Олимпиадная задача по информатике
Роботы-кладоискатели A и B могут перемещаться по квадратному клетчатому полю размером 10 на 10 клеток. Каждое перемещение робота в соседнюю...

9
2687 / 2259 / 244
Регистрация: 03.07.2012
Сообщений: 8,227
Записей в блоге: 1
22.11.2014, 20:53
128, что в ней олимпиадного?
0
0 / 0 / 0
Регистрация: 22.11.2014
Сообщений: 6
22.11.2014, 21:00  [ТС]
Ну она на олимпиаде была просто)
Можешь в кратце объяснить решение?
0
2687 / 2259 / 244
Регистрация: 03.07.2012
Сообщений: 8,227
Записей в блоге: 1
22.11.2014, 21:06
А зачем? Олимпиадные задачи - они для развития. А вы ни малейшийх усилий по решению не продемонстрировали. Значит, вам это не надо
0
0 / 0 / 0
Регистрация: 22.11.2014
Сообщений: 6
22.11.2014, 21:07  [ТС]
zer0mail, я решил ее, просто:

Как я понял кол информации Снорка мы высчитываем = round(log2(m*m)+3*32, а у Хемеля = round(log2(m*m)*32.
При 128 получается разница же 338 бит, так как при 16348 клетках кол информации на клетку будет 14 бит

Поэтому и спросил помощи на форуме.
0
2687 / 2259 / 244
Регистрация: 03.07.2012
Сообщений: 8,227
Записей в блоге: 1
22.11.2014, 21:10
3*31, т.к первая клетка известна и нужно сделать 31 ход.
0
0 / 0 / 0
Регистрация: 22.11.2014
Сообщений: 6
22.11.2014, 21:13  [ТС]
Спасибо!
0
0 / 0 / 0
Регистрация: 21.10.2015
Сообщений: 3
22.10.2015, 08:00
Цитата Сообщение от Dannyknv Посмотреть сообщение
Как я понял кол информации Снорка мы высчитываем = round(log2(m*m)+3*32, а у Хемеля = round(log2(m*m)*32.
При 128 получается разница же 338 бит, так как при 16348 клетках кол информации на клетку будет 14 бит
Поэтому и спросил помощи на форуме.
откуда ты вообще этот логарифм взял???
0
Платежеспособный зверь
 Аватар для кот Бегемот
8959 / 4384 / 1652
Регистрация: 28.10.2009
Сообщений: 11,629
22.10.2015, 10:19
В олимпиадные задачи по информатике входят исключительно задания по программированию. Так что эта задача бесполезна при подготовке к олимпиаде. Разве только в школе...
0
0 / 0 / 0
Регистрация: 21.10.2015
Сообщений: 3
22.10.2015, 10:23
да не важно. надо быть ко всему готовым. так что узнать решение не помешает
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.10.2015, 10:23
Помогаю со студенческими работами здесь

Олимпиадная задача по информатике
Тофсла построил таблицу истинности логической функции от трех аргументов F(A,B,C) и обнаружил, что функция принимает истинное значение...

Олимпиадная задача по информатике
Большинство сетевых приложений построено по архитектуре клиент-сервер. Взаимодействие приложений через стек протоколов TCP\IP...

Олимпиадная задача на кодирование информации
Какое минимальное количество бит понадобится для того, чтобы закодировать все натуральные числа не превышающие числа 576p, если известно,...

Олимпиадная задача на шестнадцатеричную систему счисления
Запись некоторого натурального числа X в шестнадцатеричной системе счисления имеет ровно три значащих разряда. Это число увеличили в два...

Задача по информатике
Подбросьте идею как решить такую задачку:


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Свой попап в SwiftUI
mobDevWorks 03.04.2025
SwiftUI, как декларативный фреймворк от Apple, предоставляет множество инструментов для создания пользовательских интерфейсов. В нашем распоряжении есть такие API как alerts, popovers, action sheets. . .
Антипаттерны микросервисной архитектуры
ArchitectMsa 03.04.2025
Хорошо спроектированная микросервисная система может выдержать испытание временем, оставаясь гибкой, масштабируемой и устойчивой к большинству проблем. Такая архитектура обладает высоким уровнем. . .
std::mutex в C++: Советы и примеры использования
bytestream 03.04.2025
std::mutex - это механизм взаимного исключения, который гарантирует, что критический участок кода выполняется только одним потоком в каждый момент времени. Это простое, но могущественное средство. . .
Не удержался от оценки концепции двигателя Стирлинга.
Hrethgir 03.04.2025
Сколько не пытался - она выдавала правильные схемы, причём случайно рисовала горячие области в середине, холодные по краям, трубки с краёв в низ и магнит в соединяющей, но при этой выдавала описание. . .
Метод с двумя буферами (или double buffering) или ping-pong buffering
Hrethgir 02.04.2025
Из ответов LM модели. Метод, который предполагает использование двух массивов для хранения промежуточных результатов сложения векторов, обычно применяется в сценариях, где необходимо минимизировать. . .
На любовном киберфронте
Alexander-7 01.04.2025
Недавно на одном малоизвестном сайте знакомств мною заинтересовалась девушка: «Текст немного странный. Но, судя по адресу почты, иностранка», – подумал я. Поколебавшись пару суток, я ответил ей:. . .
Как работает Node.js изнутри
run.dev 29.03.2025
Node. js изменил подход к разработке веб-приложений, позволив использовать JavaScript не только на стороне клиента, но и на сервере. Созданный в 2009 году Райаном Далем, этот открытый,. . .
Моки в Python: Mock Object Library
py-thonny 29.03.2025
Тестирование кода требует особого подхода, когда речь идёт о компонентах, взаимодействующих с внешним миром. Мы часто сталкиваемся с непредсказуемостью HTTP-запросов, чтением данных из базы или. . .
JavaScript: Управление памятью и улучшение производительности
run.dev 29.03.2025
В отличие от низкоуровневых языков программирования, JavaScript не требует ручного выделения и освобождения памяти. Здесь работает автоматический сборщик мусора, который определяет, какие объекты. . .
Мультитенантная архитектура со SpringBoot и PostgreSQL
ArchitectMsa 29.03.2025
SaaS-приложения редко обслуживают одного клиента и обычно они должны поддерживать множество организаций, каждая из которых работает в своём изолированном пространстве. Мультитенантная архитектура. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru
Выделить код Копировать код Сохранить код Нормальный размер Увеличенный размер