[Игра]Викторина - Страница 69 - Форум HeroesWorld-а

Быстрая навигация по основным разделам форума:
Турниры
КАРТЫ
Heroes 6
Heroes 5
Heroes 4
Heroes 3
Heroes 2
Heroes 1
Might&Magic

Все обо всем Подраздел для общения на любую тему. В данном подразделе не запрещается офтопик и флуд.
[сообщения в этом подФоруме не увеличивают ваш счетчик сообщений]

Ответ
Страница 69 из 87
 
Опции темы
#1021
Старый 14.10.2016, 00:38
  #1021
^
Hermit
 
Аватар для Hermit
📖
Регистрация: 08.09.2008
Сообщения: 1957
Регистрация: 08.09.2008
Сообщения: 1957
По умолчанию
Re: [Игра]Викторина

Можешь любой сложности искать. Я каждую разгадку постараюсь понять.
__________________
Всё не так плохо как Вы думаете. Всё намного хуже!
Всё не так плохо как Вы думаете. Всё намного хуже!
Hermit вне форума
Ответить с цитированием
#1022
Старый 14.10.2016, 00:54
  #1022
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
По умолчанию
Re: [Игра]Викторина

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

Вот только совсем не легкий пример получился. Возможно, кто-то найдет решение попроще.
А, по-моему, xor'ами весьма изящно! Мне нравится!
Ment вне форума
Ответить с цитированием
#1023
Старый 14.10.2016, 00:57
  #1023
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
По умолчанию
Re: [Игра]Викторина

Немного, правда, смущает, что i1 передаётся и в bit1 и в bit2. У нас там количество информации впритык, точно ли это никак не скажется? Но, если работает, то Ок...
Ment вне форума
Ответить с цитированием
#1024
Старый 14.10.2016, 01:04
  #1024
^
Hermit
 
Аватар для Hermit
📖
Регистрация: 08.09.2008
Сообщения: 1957
Регистрация: 08.09.2008
Сообщения: 1957
По умолчанию
Re: [Игра]Викторина

Нет не работает. Пост 1022.

Добавлено через 2 минуты
Так что можно отгадывать дальше.[u]
__________________
Всё не так плохо как Вы думаете. Всё намного хуже!
Всё не так плохо как Вы думаете. Всё намного хуже!
Hermit вне форума
Ответить с цитированием
#1025
Старый 14.10.2016, 02:10
  #1025
^
Uranium235
 
Аватар для Uranium235
📖
Регистрация: 23.05.2015
Сообщения: 679
1487
Отправить сообщение для  Uranium235 с помощью ICQ
Регистрация: 23.05.2015
Сообщения: 679
1487
Отправить сообщение для  Uranium235 с помощью ICQ
По умолчанию
Re: [Игра]Викторина

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

Добавлено через 1 час 2 минуты
Функция Ф - это хог, он же четность (0 - одинаковые символы, 1 - разные символы). Само сообщение - АБВГ, цифры - номера битов.
Бит 1: Ф(А, Б)
Бит 2: Ф(В, Г)
Бит 3: Ф(1, 2)
Видно наличие/отсутствие ошибки среди первых трех битов
Бит 4: Ф (А, Г)
Бит 5: Ф (Б, В)
Бит 6: А
Бит 7: В
Если ошибка в трех первых битах успешно читаем сообщение. Пусть там нет ошибки.
Можно проверить наличие ошибки в битах 4 и 5:
Мы точно знаем из 1го и 2го, одинаковые или разные А с Б и В с Г.
То есть 00, 01, 10 или 11.
Если 1й и 2й биты имеют значения 00 или 11, то 4 и 5 тоже должны быть либо 00, либо 11 (допустимы обе комбинации одинаковых значений).
Для 01 и 10 известных неизвестные без ошибки тоже должны быть 01 и 00.
Если ошибка среди 4 и 5 есть, мы по прежнему строим сообщение через биты 1,2,6,7. Пусть ее нету. Ошибка в А, в В либо ее вообще нету.
Если ошибки вообще нету, то подставив А и В в функции 1,2 и 3,4, получим исходное сообщение в обоих случаях, причем одинаковое. Если разное, то инвертировав либо А, либо В, можем назвать абсолютно точно Ф(А, В). Я не знаю почему, но кажется, что решив систему уравнений с этой функцией и функциями из битов 1-2, 4-5, можно найти, в А или В косяк. Но видимо нет, но думать мне уже лень. Но предыдущий результат я несколько улучшил. Я читаю сообщение в 5 случаях испорченного бита и в случае отсутствия ошибки, и только в случае порчи двух конкретных битов имею 2 варианта сообщения, причем знаю об этом.
Можно попробовать также, но контрольный (3й бит) взять как Ф (2, 6).
Uranium235 вне форума
Ответить с цитированием
#1026
Старый 14.10.2016, 09:33
  #1026
^
Sesame
 
Аватар для Sesame
📖
Регистрация: 22.03.2013
Адрес: Федеративный султанат
Сообщения: 2172
Выставка наград
Регистрация: 22.03.2013
Адрес: Федеративный султанат
Сообщения: 2172
Выставка наград
По умолчанию
Re: [Игра]Викторина

да, действительно. В моем решении в случае поломки бит5 возникает неопределенность. Так что не годится.
ладно, возвращаемся к передаче сообщения и "контрольной суммы".
Только в контрольной сумме ксорим не попарно, как Уран, а первый бит с каждым из следующих.

Сообщение: i1 i2 i3 i4

Передаем
bit1: i1
bit2: i2
bit3: i3
bit4: i4
bit5: xor(bit1,bit2)
bit6: xor(bit1,bit3)
bit7: xor(bit1,bit4)

Чуть позже проверю для всех вариантов.

Добавлено через 2 часа 58 минут
мде, все равно остались неоднозначности.
Этот вариант тоже нерабочий.
__________________
..разым двазым трызым рызым пята лата сигерь мата локом боком крюк за крюк из бульмы бульма урюк..

Знание некоторых закономерностей освобождает от изучения многих фактов.

Мечты сбываются рано или поздно, так или иначе.
..разым двазым трызым рызым пята лата сигерь мата локом боком крюк за крюк из бульмы бульма урюк..

Знание некоторых закономерностей освобождает от изучения многих фактов.

Мечты сбываются рано или поздно, так или иначе.
Sesame вне форума
Ответить с цитированием
#1027
Старый 14.10.2016, 10:55
  #1027
^
Hermit
 
Аватар для Hermit
📖
Регистрация: 08.09.2008
Сообщения: 1957
Регистрация: 08.09.2008
Сообщения: 1957
По умолчанию
Re: [Игра]Викторина

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

Добавлено через 1 час 2 минуты
Функция Ф - это хог, он же четность (0 - одинаковые символы, 1 - разные символы). Само сообщение - АБВГ, цифры - номера битов.
Бит 1: Ф(А, Б)
Бит 2: Ф(В, Г)
Бит 3: Ф(1, 2)
Видно наличие/отсутствие ошибки среди первых трех битов
Бит 4: Ф (А, Г)
Бит 5: Ф (Б, В)
Бит 6: А
Бит 7: В
Если ошибка в трех первых битах успешно читаем сообщение. Пусть там нет ошибки.
Можно проверить наличие ошибки в битах 4 и 5:
Мы точно знаем из 1го и 2го, одинаковые или разные А с Б и В с Г.
То есть 00, 01, 10 или 11.
Если 1й и 2й биты имеют значения 00 или 11, то 4 и 5 тоже должны быть либо 00, либо 11 (допустимы обе комбинации одинаковых значений).
Для 01 и 10 известных неизвестные без ошибки тоже должны быть 01 и 00.
Если ошибка среди 4 и 5 есть, мы по прежнему строим сообщение через биты 1,2,6,7. Пусть ее нету. Ошибка в А, в В либо ее вообще нету.
Если ошибки вообще нету, то подставив А и В в функции 1,2 и 3,4, получим исходное сообщение в обоих случаях, причем одинаковое. Если разное, то инвертировав либо А, либо В, можем назвать абсолютно точно Ф(А, В). Я не знаю почему, но кажется, что решив систему уравнений с этой функцией и функциями из битов 1-2, 4-5, можно найти, в А или В косяк. Но видимо нет, но думать мне уже лень. Но предыдущий результат я несколько улучшил. Я читаю сообщение в 5 случаях испорченного бита и в случае отсутствия ошибки, и только в случае порчи двух конкретных битов имею 2 варианта сообщения, причем знаю об этом.
Можно попробовать также, но контрольный (3й бит) взять как Ф (2, 6).

Пока это самое лучшее, правда, ещё не читал, что Sesame написала. Тут уже гарантированно можно обнаружить, что была ошибка! Но всё же, например...
По вашему алгоритму комбинация 0000 кодируется сообщением 0000000,
а комбинация 1111 кодируется сообщением 0000011.
А мы допустим мы получили комбинацию 0000010
Да, понятно, что испортили один бит и даже больше - это шестой или седьмой бит. Но как понять передавали 0000 и испортили шестой бит с 0 на 1 или 1111 и испортили седьмой бит с 1 на 0???

Добавлено через 11 минут
Sesameда, действительно. В моем решении в случае поломки бит5 возникает неопределенность. Так что не годится.
ладно, возвращаемся к передаче сообщения и "контрольной суммы".
Только в контрольной сумме ксорим не попарно, как Уран, а первый бит с каждым из следующих.

Сообщение: i1 i2 i3 i4

Передаем
bit1: i1
bit2: i2
bit3: i3
bit4: i4
bit5: xor(bit1,bit2)
bit6: xor(bit1,bit3)
bit7: xor(bit1,bit4)

Чуть позже проверю для всех вариантов.

Добавлено через 2 часа 58 минут
мде, все равно остались неоднозначности.
Этот вариант тоже нерабочий.
Тоже не плохо. Ошибка обнаруживается. Но вот, например, 0000 передавали или 0100 не понятно, если получили 0100000, потому что 0000 соответствует 0000000, а 0100 - 0100100 и тут та же ситуация, что и у Uranium235.
__________________
Всё не так плохо как Вы думаете. Всё намного хуже!
Всё не так плохо как Вы думаете. Всё намного хуже!
Hermit вне форума
Ответить с цитированием
#1028
Старый 14.10.2016, 15:17
  #1028
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
По умолчанию
Re: [Игра]Викторина

Я ещё вот такое придумал на основе вышеозвученных идей, но проверил программой, вроде бы оно где-то сфейлилось.
bit1=xor(i1,i2)
bit2=xor(i1,i3)
bit3=xor(i1,i4)
bit4=xor(i2,i3)
bit5=xor(i2,i4)
bit6=xor(i3,i4)
bit7=i1

Сфейлилось на 1001 и 0110.
1001:
0011001
0110:
0011000
Если в одном варианте немцы испортят последний бит, то они совпадут. А жаль... Ну, я тоже пытался.
Ment вне форума
Ответить с цитированием
#1029
Старый 14.10.2016, 15:35
  #1029
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
По умолчанию
Re: [Игра]Викторина

Хм, а вот этот алгоритм вроде не сфейлился:
bit1=xor(i1,i2)
bit2=xor(i1,i3)
bit3=xor(i1,i4)
bit4=xor(i2,i3)
bit5=xor(i2,i4)
bit6=i2
bit7=i1

Ой, только я ступил, у меня там обратный xor в проверках фигурировал. Ошибся ) То есть 1, когда операнды одинаковые. Но да не суть, с нормальным тоже проверка проходится. Они симметрично работают.
Ment вне форума
Ответить с цитированием
#1030
Старый 14.10.2016, 16:34
  #1030
^
Hermit
 
Аватар для Hermit
📖
Регистрация: 08.09.2008
Сообщения: 1957
Регистрация: 08.09.2008
Сообщения: 1957
По умолчанию
Re: [Игра]Викторина

MentХм, а вот этот алгоритм вроде не сфейлился:
bit1=xor(i1,i2)
bit2=xor(i1,i3)
bit3=xor(i1,i4)
bit4=xor(i2,i3)
bit5=xor(i2,i4)
bit6=i2
bit7=i1

Ой, только я ступил, у меня там обратный xor в проверках фигурировал. Ошибся ) То есть 1, когда операнды одинаковые. Но да не суть, с нормальным тоже проверка проходится. Они симметрично работают.
Да. Ошибка обнаруживается, но опять же могу процитировать то, что я писал Урану.
HermitПо вашему алгоритму комбинация 0000 кодируется сообщением 0000000,
а комбинация 1111 кодируется сообщением 0000011.
А мы допустим мы получили комбинацию 0000010
Да, понятно, что испортили один бит и даже больше - это шестой или седьмой бит. Но как понять передавали 0000 и испортили шестой бит с 0 на 1 или 1111 и испортили седьмой бит с 1 на 0???
К твоему алгоритму это тоже применимо.
Пока самый лучший вариант предложил Уран.
__________________
Всё не так плохо как Вы думаете. Всё намного хуже!
Всё не так плохо как Вы думаете. Всё намного хуже!
Hermit вне форума
Ответить с цитированием
#1031
Старый 14.10.2016, 17:12
  #1031
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
По умолчанию
Re: [Игра]Викторина

Хм, ну да. Значит, программа врёт.
Ment вне форума
Ответить с цитированием
#1032
Старый 14.10.2016, 17:45
  #1032
^
Sesame
 
Аватар для Sesame
📖
Регистрация: 22.03.2013
Адрес: Федеративный султанат
Сообщения: 2172
Выставка наград
Регистрация: 22.03.2013
Адрес: Федеративный султанат
Сообщения: 2172
Выставка наград
По умолчанию
Re: [Игра]Викторина

что-то я вообще начинаю сомневаться, что эту задачу можно решить через XORы.
Небось в ответе какая-нибудь подколка из разряда: если первый символ 0, то передаем только шесть бит (а кто сказал, что их обязательно 7?)
В общем, предлагаю подумать еще и в этом направлении.
__________________
..разым двазым трызым рызым пята лата сигерь мата локом боком крюк за крюк из бульмы бульма урюк..

Знание некоторых закономерностей освобождает от изучения многих фактов.

Мечты сбываются рано или поздно, так или иначе.
..разым двазым трызым рызым пята лата сигерь мата локом боком крюк за крюк из бульмы бульма урюк..

Знание некоторых закономерностей освобождает от изучения многих фактов.

Мечты сбываются рано или поздно, так или иначе.
Sesame вне форума
Ответить с цитированием
#1033
Старый 14.10.2016, 17:50
  #1033
^
Hermit
 
Аватар для Hermit
📖
Регистрация: 08.09.2008
Сообщения: 1957
Регистрация: 08.09.2008
Сообщения: 1957
По умолчанию
Re: [Игра]Викторина

SesameНебось в ответе какая-нибудь подколка из разряда: если первый символ 0, то передаем только шесть бит (а кто сказал, что их обязательно 7?)
В общем, предлагаю подумать еще и в этом направлении.

Нет в ответе передаются все 7 битов!

Добавлено через 33 секунды
Их должно быть 7!
__________________
Всё не так плохо как Вы думаете. Всё намного хуже!
Всё не так плохо как Вы думаете. Всё намного хуже!
Hermit вне форума
Ответить с цитированием
#1034
Старый 14.10.2016, 17:52
  #1034
^
Ment
 
Аватар для Ment
📖
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
Регистрация: 30.10.2009
Адрес: Национальный заповедник
Сообщения: 31052
По умолчанию
Re: [Игра]Викторина

А если на xor'ах мы теряем часть информации? Что если ввести ещё что-нибудь? And, например. And работает совсем иначе (а вот если есть and, то or уже не понадобится).
Или надо-таки для избежания потерь передать эти несчастные i1,i2,i3,i4, а потом замутить xor(i1,i2), xor(i1,i3), xor(i1,i4)
Как раз получается три xor'а. Хотя всё равно я вижу, что это не работает, можно придумать пример. Эх.
Ment вне форума
Ответить с цитированием
#1035
Старый 14.10.2016, 17:55
  #1035
^
Sesame
 
Аватар для Sesame
📖
Регистрация: 22.03.2013
Адрес: Федеративный султанат
Сообщения: 2172
Выставка наград
Регистрация: 22.03.2013
Адрес: Федеративный султанат
Сообщения: 2172
Выставка наград
По умолчанию
Re: [Игра]Викторина

XOR вроде дает информации больше, чем AND или OR, но не знаю, других идей все равно нет. Я еще вспомнила, что ксорить можно больше двух бит )) Но лично мне это не помогло.
__________________
..разым двазым трызым рызым пята лата сигерь мата локом боком крюк за крюк из бульмы бульма урюк..

Знание некоторых закономерностей освобождает от изучения многих фактов.

Мечты сбываются рано или поздно, так или иначе.
..разым двазым трызым рызым пята лата сигерь мата локом боком крюк за крюк из бульмы бульма урюк..

Знание некоторых закономерностей освобождает от изучения многих фактов.

Мечты сбываются рано или поздно, так или иначе.
Sesame вне форума
Ответить с цитированием
Ответ
Страница 69 из 87


Опции темы



Часовой пояс GMT +4, время: 14:08.


vBulletin v3.5.0, Copyright ©2000-2026, Jelsoft Enterprises Ltd. (Русский)

Яндекс цитирование    Top.Mail.Ru