Не легче судоку: загадки, которые заставят ваши мозги поработать
18 августа 2021
Мира Маркина
В Японии умер «крестный отец» судоку Маки Кадзи. Причиной смерти стал рак желчных протоков. В память о нем «Рамблер» решил вспомнить историю популяризации этой головоломки с числами, а заодно собрать и другие загадки, которые сломают мозг.
Фото: Кадр из фильма «Расплата»Кадр из фильма «Расплата»
До сих пор точно неизвестно, кто именно придумал судоку. Некоторые приписывают авторство швейцарскому математику Леонарду Эйлеру (18 век), другие же считают, что современную версию головоломки подарил миру американский архитектор Говард Гарнс. В 1980-х годах ее-то и заметил Маки Кадзи, который буквально влюбился в игру и даже придумал ей название Suuji wa dokushin ni kagiru («Цифра используется только один раз») — по первым буквам сокращается как судоку. Частично измененную головоломку с новым названием он опубликовал в собственном журнале Nikoli, который открыл вместе с друзьями в 1980 году. С тех пор эта игра начала завоевывать мир, в 2006 году даже появился чемпионат мира по решению судоку.
S Pakhrin/Flickr
Для любителей «поразмять» мозги собрали еще несколько загадок, которые заставят поломать голову. В конце статьи мы дадим ответы на все головоломки, но не спешите, сначала попробуйте разгадать их самостоятельно.
Детективная головоломка 1
Ограблена дача. Показания свидетеля: «Я услышал шум у соседей и направился на их участок. Чтобы заглянуть в дом, я подышал на заледеневшее окно и увидел разгром». Почему после этого его арестовали?
Детективная головоломка 2
Полиция расследует убийство химика: под подозрением ученики специалиста Сергей, Николай, Феликс и Михаил. В кармане у химика детективы обнаружили записку, которая была написана за несколько минут до смерти – на ней было всего три цифры 28, 27 и 57. Именно она помогла раскрыть дело. Как полиции удалось вычислить преступника, и кто убийца?
Детективная головоломка 3
Слуга принес королю и королеве два стакана воды на ночь. Король выпил всю воду залпом и с ним ничего плохого не случилось. Королева пила долго, маленькими глотками. Она умерла. Почему?
Кадр из сериала «Шерлок»
Загадка на логику
Какая из цифр встречается чаще всего в ряду числе от 0 до 109. Варианты ответа: 0, 1, 9 или 2.
Загадка на логику 2
Какой принцип у этой последовательности цифр: 8,2,9,0,1,5,7,3,4,6?
Загадка на логику 3
«29 – 1 = 30». Как такое возможно?
Ответы
Детективные загадки
- Окна замерзают и покрываются льдом изнутри, а сосед дышал на окно снаружи.
- Цифры на записке – это номера элементов в таблице Менделеева. Из их названий складывается имя убийцы Ni (28) Co (27) La (57).
- В стаканах был отравлен лед. Когда пил король, лед не успел растаять, а когда королева — лед растаял и отравил воду.
Загадки на логику
- Цифра 1.
- Числа выстроены в соответствии с алфавитным порядком их названий: восемь, два, девять и так далее.
- Представьте этот пример в римских цифрах. XXIX – I = XXX. Убираем из 29 (XXIX) единицу (I) и получаем 30 (XXX).
Истории,Леонард Эйлер,
4Ты не сможешь решить все эти логические задачи, если твой iq менее 140
Автор Андрей. Тип теста: Блиц Тест. Категория: На iQ.
Ты не сможешь решить все эти логические задачи, если твой iq менее 140
Логические загадки. Загадки на логику. Привет, друзья. Сегодня я решил проверить вашу логику. Я поставлю перед вами задачи, а вы должны включить мозг на максимум и показать на что вы способны
Начало теста:
1 вопрос
Какое из этих слов лишнее?
Варианты ответов:
- Град
- Дождь
- Молния
- Снег
2 вопрос
Вода для льда — это как молоко для …
Варианты ответов:
- Каши
- Хлеба
- Кофе
- Сыра
3 вопрос
На каждый день рождения родители Вани бросают в его копилку столько монет, сколько ему лет. Сейчас в копилке 21 монета. Сколько Ване лет?
Варианты ответов:
- 5
- 6
- 12
- 21
4 вопрос
Какое число будет следующим?
Варианты ответов:
- 9
- 2
- 3
- 5
5 вопрос
Найди лишнее лицо.
Варианты ответов:
- 2
- 4
- 1
- 3
6 вопрос
Какая цифра чаще встречается в ряду чисел от 0 до 109
Варианты ответов:
- 9
- 0
- 2
- 1
7 вопрос
Восстанови порядок букв в слове. Какое из них отличается от остальных?
Варианты ответов:
- Кнупиш
- Тцармо
- Чоехв
- Ггооьл
8 вопрос
Какое из этих слов лишнее?
Варианты ответов:
- Акула
- Сельдь
- Тунец
- Кит
9 вопрос
Какие две фигуры не подходят остальным?
Варианты ответов:
- 3 и 4
- 1 и 4
- 2 и 3
- 1 и 5
10 вопрос
Какая буква должна быть на месте вопросительного знака?
Варианты ответов:
- Р
- С
- П
- Ч
11 вопрос
Назовите лишнее слово.
Варианты ответов:
- Нью-Йорк
- Лондон
- Москва
- Париж
Идет подсчет результатов
11
Сообщить о нарушение
Ваше сообщение отправлено, мы постараемся разобраться в ближайшее время.
Отправить сообщение
41 445 просмотров Верно 1 094 / С ошибками 15 737
- 8
- 10
Вставить на сайт:
HTML-код
Новые тесты от Андрей
Как покорить и завоевать разные знаки зодиака
HTML-код Андрей Количество прохождений: 114 178 просмотров — 24 марта 2023 Пройти тестСможете ли вы распределить эти достопримечательности по континентам?
HTML-код Андрей Количество прохождений: 86 154 просмотров — 24 марта 2023 Пройти тестВы НЕ жили в СССР, если не сможете ответить хотя бы на 8/10 вопросов
HTML-код Андрей Количество прохождений: 129 224 просмотров — 24 марта 2023 Пройти тестТест для знатока и интеллектуала!
HTML-код Андрей Количество прохождений: 104 188 просмотров — 24 марта 2023 Пройти тестВыберите волшебную палочку, а мы расскажем какой вы волшебник
HTML-код Андрей Количество прохождений: 114 170 просмотров — 24 марта 2023 Пройти тестЛинии на запястьях расскажут о сильных сторонах вашей личности
HTML-код Андрей Количество прохождений: 108 160 просмотров — 24 марта 2023 Пройти тест10 кадров советской киноклассики, из которых исчезли некоторые детали: предлагаем вам угадать, какие именно
HTML-код Андрей Количество прохождений: 93 161 просмотров — 24 марта 2023 Пройти тестВопросы, на которые ответят только разносторонние личности
HTML-код Андрей Количество прохождений: 91 155 просмотров — 24 марта 2023 Пройти тест10 вопросов для оценки мышления
HTML-код Андрей Количество прохождений: 57 147 просмотров — 24 марта 2023 Пройти тестТест на оценку начитанности
HTML-код Андрей Количество прохождений: 67 129 просмотров — 24 марта 2023 Пройти тестПричины одиночества разных знаков зодиака
HTML-код Андрей Количество прохождений: 243 335 просмотров — 23 марта 2023 Пройти тестТест на широкий кругозор: ответьте хотя бы на 7 вопросов правильно
HTML-код Андрей Количество прохождений: 350 523 просмотров — 23 марта 2023 Пройти тест
Ещё новые тесты
Популярные тесты от Андрей
Сможете ли вы пройти тест для разведчиков?
HTML-код Андрей Количество прохождений: 580 396 1 163 261 просмотров — 24 июля 2018 Пройти тестНе заглядывая в Гугл, сможете ответить хотя бы на половину вопросов этого теста?
HTML-код Андрей Количество прохождений: 439 363 724 539 просмотров — 22 августа 2019 Пройти тестСможете ли вы узнать 20 людей, определивших ход истории?
HTML-код Андрей Количество прохождений: 676 111 1 112 917 просмотров — 12 февраля 2019 Пройти тестКак хорошо вы разбираетесь в географии?
HTML-код Андрей Количество прохождений: 371 477 711 721 просмотров — 26 июня 2018 Пройти тестУ вас должно быть как минимум два образования, чтобы пройти этот тест хотя бы на 9/12
HTML-код Андрей Количество прохождений: 483 629 933 441 просмотров — 12 февраля 2019 Пройти тестТест по фильмам СССР: Сможете пройти его на все 10/10? (Часть 2)
HTML-код Андрей Количество прохождений: 360 888 584 670 просмотров — 04 марта 2019 Пройти тестЭтот тест определит ваш кругозор
HTML-код Андрей Количество прохождений: 391 633 655 417 просмотров — 20 июня 2018 Пройти тестНикто не может угадать, какое из этих колец самое дорогое
HTML-код Андрей Количество прохождений: 1 296 655 1 568 092 просмотров — 20 февраля 2019 Пройти тестСколько ты можешь выиграть в «Кто хочет стать миллионером?»
HTML-код Андрей Количество прохождений: 727 506 1 300 517 просмотров — 21 августа 2018 Пройти тестТест из одного вопроса, ответить на который правильно не может почти никто. Попробуете себя?
HTML-код Андрей Количество прохождений: 400 808 597 270 просмотров — 22 января 2019 Пройти тестКакое имя подходит вам по знаку зодиака
HTML-код Андрей Количество прохождений: 377 840 535 721 просмотров — 14 августа 2019 Пройти тестЧто вас ждет в старости?
HTML-код Андрей Количество прохождений: 418 458 713 187 просмотров — 09 сентября 2018 Пройти тест
Ещё популярные тесты
Популярные тесты
Лучший в мире тест на четкость зрения и мышления? Сможете пройти?
Никто не может угадать, какое из этих колец самое дорогое
HTML-код Андрей Количество прохождений: 1 296 655 1 568 092 просмотров — 20 февраля 2019 Пройти тестЕсли сможете закончить 13 крылатых фраз, то вы настоящий интеллигент
HTML-код Андрей Количество прохождений: 642 687 1 030 720 просмотров — 18 августа 2019 Пройти тестПроверьте свой интеллект
HTML-код Владлена Количество прохождений: 332 535 550 163 просмотров — 23 января 2020 Пройти тестПройдете ли вы тест на психопата?
HTML-код Никитин Константин Количество прохождений: 323 285 492 179 просмотров — 11 января 2017 Пройти тестЕсли ответите на все вопросы нашего теста без ошибок, то можете считать себя уникумом с высоким IQ
HTML-код Андрей Количество прохождений: 438 631 715 551 просмотров — 25 февраля 2019 Пройти тестКак хорошо вы разбираетесь в географии?
HTML-код Андрей Количество прохождений: 371 477 711 721 просмотров — 26 июня 2018 Пройти тестНасколько уникальна ваша личность?
HTML-код Никитин Константин Количество прохождений: 457 403 707 214 просмотров — 26 декабря 2016 Пройти тестЕсли закончите цитаты из советских фильмов на 14/14, то вы наверняка родились в СССР
HTML-код Андрей Количество прохождений: 338 405 532 755 просмотров — 13 марта 2019 Пройти тестВ чём ваш мозг крут
HTML-код Андрей Количество прохождений: 511 983 947 222 просмотров — 22 ноября 2018 Пройти тестСможем ли мы угадать ваш возраст, задав вам 5 вопросов?
HTML-код Никитин Константин Количество прохождений: 600 756 835 410 просмотров — 20 декабря 2016 Пройти тестТолько те, кто росли в СССР, смогут без труда ответить на все вопросы нашего теста
Насколько вы привлекательны?
HTML-код Никитин Константин Количество прохождений: 406 647 806 722 просмотров — 08 января 2017 Пройти тестПростейший тест на IQ из нескольких вопросов
HTML-код Администратор Количество прохождений: 383 427 814 534 просмотров — 09 декабря 2016 Пройти тестНе называйте себя эрудированным человеком, если не сможете набрать в этом тесте хотя бы 8/10
HTML-код Андрей Количество прохождений: 382 395 640 207 просмотров — 29 января 2019 Пройти тестСможете ли вы узнать советских актеров по фото в молодости?
HTML-код Андрей Количество прохождений: 359 842 570 097 просмотров — 11 марта 2019 Пройти тестТест, который проверит вашу эрудицию: где вы на шкале от 0 до 12?
HTML-код Андрей Количество прохождений: 1 198 009 2 271 145 просмотров — 18 февраля 2019 Пройти тестА насколько вы умны?
HTML-код Никитин Константин Количество прохождений: 867 694 1 377 554 просмотров — 20 февраля 2017 Пройти тестХватит ли вашей эрудиции, чтобы пройти этот тест без помощи интернета?
HTML-код Андрей Количество прохождений: 382 532 608 986 просмотров — 07 августа 2019 Пройти тестСможете ли вы пройти тест для разведчиков?
HTML-код Андрей Количество прохождений: 580 396 1 163 261 просмотров — 24 июля 2018 Пройти тест
Ещё популярные тесты
HTML-код для вставки на сайт Разрешить комментарии Автор теста запретил комментарии Блок Новинок и Популярных тестов Теперь тесты из блоков новинок и популярных отображаются внутри вашего сайта, что увеличивает просмотры ваших страниц в 5 раз! Все комментарии после публикации проходят строгую модерацию!
OK
python — Количество вхождений цифры в числах от 0 до n
TL;DR: Если вы сделаете это правильно, вы сможете вычислить счет примерно в тысячу раз быстрее для n близко к 10**5, и поскольку лучший алгоритм использует время, пропорциональное количеству цифр в n , он может легко обрабатывать даже значения n , слишком большие для 64-битного целого числа.
Как это часто бывает с подобными головоломками («в числах от x до y, сколько…?»), ключ в том, чтобы найти способ вычислить совокупный счет, в идеале за O(1) , для большого диапазона. Для комбинаторики строкового представления чисел удобный диапазон часто представляет собой что-то вроде набора всех чисел, строковое представление которых имеет заданный размер, возможно, с определенным префиксом. Другими словами, диапазоны вида [префикс*10⁴, префикс*10⁴+9999]
, где 0 в нижнем пределе совпадает с количеством девяток в верхнем пределе и показателем степени 10 в множителе. (Часто на самом деле удобнее использовать полуоткрытые диапазоны, где нижний предел включает, а верхний предел исключает, поэтому приведенный выше пример будет [префикс*10⁴, (префикс+1)*10⁴)
.)
Также обратите внимание, что если задача состоит в том, чтобы вычислить число для [x, y), а вы знаете, как вычислить только [0, y), то вы просто делаете два вычисления, потому что
количество [x, y) == количество [0, y) - количество [0, x)
Это тождество является одним из упрощений, допускаемых полуоткрытыми интервалами.
Это прекрасно сработает с этой задачей, потому что ясно, сколько раз цифра d встречается в наборе всех k-значных суффиксов для данного префикса. (В 10 k суффиксах каждая цифра имеет ту же частоту, что и любая другая цифра; всего
Таким образом, вы можете взять число вроде 72483 и разложить его на следующие диапазоны, которые примерно соответствуют сумме цифр в числе 72483, плюс несколько диапазонов, содержащих меньшее количество цифр.
- [0, 9]
- [10, 99]
- [100, 999]
- [1000, 9999]
- [10000, 19999]
- [20000, 29999]
- [30000, 39999]
- [40000, 49999]
- [50000, 59999]
- [60000, 69999]
- [70000, 70999]
- [71000, 71999]
- [72000, 72099]
- [72100, 72199]
- [72200, 72299]
- [72300, 72399]
- [72400, 72409]
- [72410, 72419]
- [72420, 72429]
- [72430, 72439]
- [72440, 72449]
- [72450, 72459]
- [72460, 72469]
- [72470, 72479]
- [72480, 72480]
- [72481, 72481]
- [72482, 72482]
- [72483, 72483]
Однако в следующем коде я использовал немного другой алгоритм, который оказался немного короче. Он рассматривает прямоугольник, в котором записаны все числа от 0 до n, включая ведущие нули, а затем вычисляет количество для каждого столбца. Столбец цифр в прямоугольнике последовательных целых чисел следует простому повторяющемуся шаблону; частоту можно легко вычислить, начав с полностью повторяющейся части столбца. После полных повторений остальные цифры идут по порядку, причем каждая, кроме последней, появляется одинаковое количество раз. Вероятно, проще всего это понять, нарисовав небольшой пример на блокноте, но следующий код также должен быть достаточно ясным (надеюсь).
Единственная проблема заключается в том, что он считает начальные нули, которых на самом деле не существует, поэтому его необходимо исправить, вычитая количество начальных нулей. К счастью, этот счет чрезвычайно легко вычислить. Если вы рассматриваете диапазон, заканчивающийся пятизначным числом (которое само по себе не может начинаться с нуля, так как это не было бы пятизначным числом, если бы оно начиналось с нуля), то вы можете увидеть, что диапазон включает:
- 10000 номеров начинаются с нуля
- Еще 1000 чисел со вторым ведущим нулем
- Еще 100 чисел, у которых третий ведущий ноль
- Еще 10 чисел с четвертым ведущим нулем Никакие числа не имеют пяти ведущих нулей, потому что мы пишем 0 как таковой, а не как пустую строку.
В сумме получается 11110, и легко понять, как это обобщается. Это значение можно вычислить без цикла, как (10⁵ − 1) / 9 − 1. Эта коррекция выполняется в конце следующей функции:
def countd(m, s=(0,2,4)): если m < 0: вернуть 0 м += 1 рв = 0 остальное = 0 позиция = 1 пока верно: цифра = м % 10 м //= 10 rv += m * pos * len(s) для д в с: если цифра > d: рв += поз элитная цифра == d: рв += отдых если м == 0: перерыв остаток += цифра * позиция позиция *= 10 если 0 в с: рв -= (10 * поз - 1) // 9- 1 вернуть автофургон
Этот код почти наверняка можно улучшить; Я просто пытался разобраться с алгоритмом. Но в действительности время выполнения измеряется в микросекундах, а не в миллисекундах, даже для гораздо больших значений n .
Вот обновление теста Келли; Я удалил другие решения, потому что они требовали слишком много времени для последнего значения n :
Попробуйте онлайн! Алгоритм
— Как подсчитать каждую цифру в диапазоне целых чисел?
Представьте, что вы продаете эти металлические цифры, используемые для нумерации домов, дверей шкафчиков, гостиничных номеров и т. д. Вам нужно найти, сколько цифр каждой цифры нужно отправить, когда вашему клиенту нужно пронумеровать двери/дома:
- от 1 до 100
- от 51 до 300
- от 1 до 2000 с нулями слева
Очевидное решение состоит в том, чтобы выполнить цикл от первого до последнего числа, преобразовать счетчик в строку с нулями или без них слева, извлечь каждую цифру и использовать ее в качестве индекса для увеличения массива из 10 целых чисел.
Интересно, есть ли лучший способ решить эту проблему, не перебирая в цикле весь диапазон целых чисел.
Приветствуются решения на любом языке или псевдокоде.
Обзор ответов
Джон из CashCommons и Уэйн Конрад отмечают, что мой текущий подход хорош и достаточно быстр. Позвольте мне использовать глупую аналогию: если бы вам дали задание подсчитать клетки на шахматной доске менее чем за 1 минуту, вы могли бы закончить задачу, считая клетки одну за другой, но лучше Решение состоит в том, чтобы посчитать стороны и сделать умножение, потому что позже вас могут попросить посчитать плитки в здании.
Alex Reisner указывает на очень интересный математический закон, который, к сожалению, не имеет отношения к этой проблеме.
Андрес предлагает тот же алгоритм, что и я, но извлекает цифры с помощью операций %10 вместо подстрок.
Джон из CashCommons и phord предлагает предварительно вычислить требуемые цифры и сохранить их в таблице поиска или, для ускорения работы, в массиве. Это могло бы быть хорошим решением, если бы у нас было абсолютное, неподвижное, высеченное в камне максимальное целочисленное значение. Я никогда не видел ни одного из них.
High-Performance Mark и фильтр вычислили необходимые цифры для различных диапазонов. Результат для одного миллиона, по-видимому, указывает на то, что пропорция существует, но результаты для других чисел показывают другие пропорции.
фильтр нашел несколько формул, которые можно использовать для подсчета цифр числа, являющегося степенью десяти. У Роберта Харви был очень интересный опыт публикации вопроса на MathOverflow. Один из парней-математиков написал решение, используя математические обозначения.
Aaronaught разработал и протестировал решение с использованием математики. После публикации он просмотрел формулы, взятые из Math Overflow, и нашел в них недостаток (укажите на Stackoverflow :).
noahlavine разработал алгоритм и представил его в виде псевдокода.
Новое решение
Прочитав все ответы и проведя несколько экспериментов, я обнаружил, что для диапазона целых чисел от 1 до 10 n -1:
- Для цифр от 1 до 9, n*10 (n-1) Необходимо штук
- Для цифры 0, если не используются ведущие нули, необходимо n*10 n-1 — ((10 n -1) / 9)
- Для цифры 0, если используются ведущие нули, n*10 n-1 — необходимо n
Первая формула была найдена фильтром (и, вероятно, другими), а две другие я нашел методом проб и ошибок (но они могут быть включены в другие ответы).
Например, если n = 6, диапазон от 1 до 999 999:
- Для цифр от 1 до 9 нам нужно 6*10 5 = 600 000 каждого из
- Для цифры 0 без ведущих нулей нам нужно 6*10 5 – (10 6 -1)/9 = 600 000 — 111 111 = 488 889
- Для цифры 0 с ведущими нулями нам нужно 6*10 5 – 6 = 599 994
Эти номера можно проверить, используя результаты High-Performance Mark .
Используя эти формулы, я улучшил исходный алгоритм. Он по-прежнему выполняет цикл от первого до последнего числа в диапазоне целых чисел, но если он находит число, являющееся степенью десяти, он использует формулы для добавления к подсчету цифр количества для полного диапазона от 1 до 9.5 — 1 = 99999 integer Prefix //Первые цифры в числе. Для 14 200 префикс 142. array 0..9 Digits //Будет храниться количество всех цифр ДЛЯ номера = от первого до последнего CALL TallyDigitsForOneNumber WITH Number,1 //Подсчитываем количество каждой цифры //в числе увеличить на 1 //Начало оптимизации. 3 — 1 = 1000 — 1 = 9(3-1) = 300 до цифр от 0 до 9 Digits[0] -= -Power //Настроить цифру 0 (формула ведущих нулей) Префикс = первые цифры номера //Для 1000 префикс равен 1 CALL TallyDigitsForOneNumber WITH Prefix,Nines //Подсчитываем количество каждого // цифра в префиксе, //увеличиваем на 999 Number += Nines // Увеличиваем счетчик циклов на 999 циклов КОНЕЦ КОНЕЦ //Конец оптимизации КОНЕЦ ПОДПРОГРАММА TallyDigitsForOneNumber ПАРАМЕТРЫ Number,Count ПОВТОРИТЬ Цифры [Число % 10] += Количество Число = Число / 10 ДО Число = 0
Например, для диапазона от 786 до 3021 счетчик будет увеличиваться:
- На 1 от 786 до 790 (5 циклов)
- На 9 от 790 до 799 (1 цикл)
- На 1 от 799 до 800
- К 99 с 800 до 899
- На 1 с 899 по 900
- К 99 от 900 до 999
- На 1 от 999 до 1000
- По 999 с 1000 по 1999
- По 1 с 1999 по 2000 год
- По 999 с 2000 по 2999
- На 1 с 2999 по 3000
- По 1 от 3000 до 3010 (10 циклов)
- К 9 с 3010 по 3019 (1 цикл)
- По 1 с 3019 по 3021 (2 цикла)
Всего: 28 циклов Без оптимизации: 2235 циклов
Обратите внимание, что этот алгоритм решает задачу без начальных нулей. Чтобы использовать его с ведущими нулями, я использовал хак:
Если требуется диапазон от 700 до 1 000 с ведущими нулями, используйте алгоритм для 10 700 до 11 000, а затем вычтите 1 000 — 700 = 300 из подсчета цифры 1.
Эталонный тест и исходный код
Я протестировал оригинальный подход, тот же подход с использованием %10 и новое решение для некоторых больших диапазонов, и получил следующие результаты:
Оригинал 104,78 секунды С %10 83,66 Со степенями десяти 0,07
Скриншот тестового приложения:
(источник: clarion.sca.mx)
Если вы хотите увидеть полный исходный код или запустить тест, воспользуйтесь этими ссылками:
- Полный исходный код (в Clarion): http://sca.mx/ftp/countdigits.txt
- Компилируемый проект и исполняемый файл win32: http://sca.mx/ftp/countdigits.zip
Принятый ответ
решение noahlavine может быть правильным, но я просто не мог следовать псевдокоду, я думаю, что некоторые детали отсутствуют или не полностью объяснены.