Вопрос задан 04.07.2023 в 18:42. Предмет Информатика. Спрашивает Кот Настя.

Даю 22 балла Какое МАКСИМАЛЬНОЕ количество вопросов достаточно задать вашему собеседнику, чтобы

точно определить день и месяц его рождения?Сделать подробно!​
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Голубин Степан.

Ответ :

Месяц находим методом половинного деления.

Двоичная запись числа 366 размещается в 9 битах (в 8 битах размещается только 256 чисел , а в 9 битах - уже 512).

То есть , понадобится задать 8 вопросов и девятой фразой будет ответ.

В году 365 (366) дней. Пусть 366, для 365 рассуждение то же.

Рассмотрим самый худший вариант

Середина года - день номер 366/2=183. Это 1 июля.

Первый вопрос: День рождения в первой половине года?

Допустим, да.

Второй вопрос: День рождения в первом квартале?

Допустим, нет. Следовательно во втором.

Второй квартал - это дни с номерами от 92 до 182. Середина - среднее арифметическое. (92+182)/2=137. Это дата 17 мая.

Третий вопрос: День рождения позднее 17 мая?

Допустим, нет.

Следовательно, интервал дат 1 апреля - 17 мая, 91 день. Опять делим на 2, сужая интервал до 22 дней. Это дата 22 апреля.

Четвертый вопрос: День рождения позднее 22 апреля?

Допустим, нет.

Новый диапазон поиска - 23 апреля - 17 мая. Половиним его.

Пятый вопрос: День рождения позднее 29 апреля?

Допустим, нет.

Поиск сузился до 23 - 29 апреля. Снова берем половину.

Шестой вопрос: День рождения позднее 26 апреля?

Допустим, нет.

Интервал дат 23-26 апреля. Половиним.

Седьмой вопрос: День рождения позднее 24 апреля?

Допустим, да.

Интервал дат 25-26 апреля.

Восьмой вопрос: День рождения 25 апреля?

Допустим, нет

Девятая фраза: Ваш день рождения 26 апреля.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Чтобы точно определить день и месяц рождения собеседника, мы можем воспользоваться алгоритмом поиска с использованием метода деления пополам. В предложенном алгоритме мы будем задавать вопросы о дате рождения собеседника, чтобы сужать диапазон возможных значений. Вот подробное описание шагов алгоритма:

  1. Начните с вопроса о месяце рождения:

    • Вопрос: "Ваш день рождения в первой половине года (январь-июнь) или во второй половине года (июль-декабрь)?"
    • Ответ собеседника: первая половина года или вторая половина года.
  2. Сужение диапазона по месяцу:

    • Если собеседник ответил "первая половина года", задайте вопрос о диапазоне месяцев от января до июня:
      • Вопрос: "Ваш день рождения в первом квартале (январь-март), во втором квартале (апрель-июнь) или в третьем квартале (июль-сентябрь)?"
      • Ответ собеседника: первый квартал, второй квартал или третий квартал.
    • Если собеседник ответил "вторая половина года", задайте вопрос о диапазоне месяцев от июля до декабря:
      • Вопрос: "Ваш день рождения в четвертом квартале (октябрь-декабрь), в пятом квартале (июль-сентябрь) или в шестом квартале (июль-декабрь)?"
      • Ответ собеседника: четвертый квартал, пятый квартал или шестой квартал.
  3. Сужение диапазона по дню:

    • Если собеседник ответил "первый квартал", задайте вопрос о диапазоне дней от 1 до 31:
      • Вопрос: "Ваш день рождения в первой трети месяца (1-10), во второй трети месяца (11-20) или в третьей трети месяца (21-31)?"
      • Ответ собеседника: первая треть, вторая треть или третья треть.
    • Если собеседник ответил "второй квартал" или "третий квартал",
0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос