Вызов Кода — Головоломки Befunge

  • Автор темы Bobr5
  • Обновлено
  • 22, Oct 2024
  • #1

Введение

Для тех, кто задается вопросом, что Бефунге На самом деле это двумерный стековый язык, созданный в 1993 году Крисом Пресси. я сделал 7 головоломок это нужно решить в Бефунге-93. Это довольно экспериментальная задача, но я думаю, что стоит попробовать :). Полный список всех команд, используемых в Befunge-93, можно найти. здесь.

Как играть?

Задача немного напоминает «ментов и грабителей» без копов. По сути, это просто взлом представленных материалов, чтобы получить очки. Каждая головоломка содержит вопросительные знаки. Их необходимо заменить любым печатным символом ascii в диапазоне

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 #N solutions:

Puzzle 1: `[hash 1]`

Puzzle 2: `[hash 2]`

etc.
 
, that includes whitespace. See the following example:

012345678910

Учитывая, что результат должен быть ???? ????? ??????? @??????? . After some puzzling, we can find out that the solution was:

################################### Programming Puzzles and Code Golf ###################################

Но! Ты не дайте решение. Это для предотвращения мошенничества. Вы публикуете не решение, а хэш. Хэш генерируется с помощью следующего фрагмента:

? ? ? ? ?????????? ? ? ???????? ?????????????? ?????"floG edoC dna selzzuP gnimmargorP "?????? @ Befunge ? ????? ???@????? ?????? ?????????

Как использовать фрагмент?

  • Сначала вставьте решение в раздел отправки.
  • Во-вторых, введите свое имя пользователя (ничего больше, оно будет проверено по истечении определенного времени).
  • В-третьих, нажмите Сгенерируйте хеш! чтобы получить ваш личный хеш.
  • Скопируйте и вставьте хэш в свое сообщение.

Головоломки

Головоломка 1 (Оценка: 3)

123

Вывод (обратите внимание на конечный пробел):

??????@

Головоломка 2 (Оценка: 3)

Hello World!

Выход:

????????? ????? ??? ? ? ? ? ? ? ? ? ? ?????? ? ? ? ? ? ? ? @ ??????? ? ? ? ???? ?? ? ??

Головоломка 3 (Оценка: 5)

abcdefghijklmnopqrstuvwxyz

Выход:

???? ? ?????????? ?? ? @

Головоломка 4 (Оценка: 2)

1 2 3 4 5 6 7 8 9 10

Вывод (обратите внимание на конечный пробел):

?? ??? ? ?????????? @

Головоломка 5 (Оценка: 5)

<div class="container"><p>Personal hash generator:<p><textarea id="inputhash" placeholder="Ваше представление" cols="40" rows="4"></textarea><br><textarea id="inputname" placeholder="Ваше имя" cols="40" rows="1"></textarea><br><button class="hashbutton" onclick="placeHash()">Generate Hash!</button><br><p id="resulthash">Your hash:</p></div><!-- Created by Adnan -->

Выход:

p {font-family: monospace;color: black;} .hashtext{color: red;font-weight:bold}

Головоломка 6 (Оценка: 5)

String.prototype.hashCode = function() { var namevalue = document.getElementById("inputname").value; var namenumber = 123;for (var character = 0; character < namevalue.length; character++) {namenumber += namevalue.substring(0, 1).charCodeAt(0);}var hash = 123 + namenumber, i, chr, len;if (this.length === 0) {return 0;}for (i = 0, len = this.length; i < len; i++) {chr = this.charCodeAt(i);hash = ((hash << 5) - hash) + chr; hash |= 0; }hash = Math.abs(hash);if ((hash).toString(16).length < 20) {for (var rand = 123; rand < 199; rand++) {hash = hash * rand;if ((hash).toString(16).length >= 20) { break; }}}return (hash).toString(16).substring(2, 12);};function placeHash() { var pretext = document.getElementById("inputhash").value; var resultinghash = pretext.hashCode(); document.getElementById("resulthash").innerHTML = 'Your hash: <span class="hashtext">' + resultinghash + "</span>";}

Выход:

"ih",,@

Головоломка 7 (Оценка: 3)

hi

Выход:

??????@
  • Это значит, что побеждает тот, кто наберет наибольшее количество очков!
  • В случае ничьей лицо, подавшее все заявки первыми, побеждает.
  • последний день подачи является 10 января по всемирному координированному времени. После этого у вас есть 2 дня, чтобы опубликовать полное решение с уже включенными хэшами. Это будет проверено :).

Как опубликовать?

Используйте следующий фрагмент, чтобы опубликовать свое сообщение:

32 - 127

Не обязательно решать головоломки по порядку. Все программы проверены здесь и будет использоваться для проверки.

Удачи!

#code-challenge #code-challenge #programming-puzzle #befunge

Bobr5


Рег
11 Oct, 2006

Тем
74

Постов
189

Баллов
579
  • 26, Oct 2024
  • #2

7 решений, 26 баллов

Я пишу это на телефоне, потому что у меня сейчас нет доступа к компьютеру. На самом деле мне пришлось решать головоломку 6 с помощью ручки и бумаги.

Головоломка 1 (Оценка 3):
 
 
 
 
 
 
 
 
 
 
     ^

v >,,
n"<@,, ,"

"e"^>,
uge"<^"Bf
 

5bafaed8e9

Это довольно прямолинейно. Получите "{". @ on the stack, then print-increment-compare-loop until 531940bc43 поражен.

Головоломка 2 (Оценка 3): "!dlroW"v >,,,, ,,v , " , , o l , l , e " @ ^,"H" <

071cad0879

По сути то же самое, что и предыдущее, только вместо цифр используются символы. Однако использовал другой IP-маршрут.

Головоломка 3 (Оценка 5): v v< > >1+:.:9`!| @

de1de4c4c8

Здесь я немного сэкономил. Поместите строку в стек и печатайте символы вручную, перемещаясь по пробелам. У меня было много лишнего места, поэтому я просто оставил большую часть вопросительных знаков. Обратите внимание на конечные пробелы в строках с 6 по 8, я не удалял их при вычислении хеша.

Головоломка 4 (Оценка 2): 01

"0"> :,1+v |-":":< @>"10",,

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

Головоломка 5 (Оценка 5): 0881fc2619

#

Это было забавно, чтобы получить право. Может работать неправильно в некоторых интерпретаторах из-за переноса строк и переходов, работает на связанном. По сути, код отправляет выходную строку, а затем входит в стандартный цикл печати, оборачиваясь по бокам.

Головоломка 6 (Оценка 5): #

#

Вот это был «шедевр». я вообще-то взял лист бумаги и потратил на это некоторое время. (На самом деле я проделал дополнительную работу, пропустив пробел в строке при копировании.) Обратите внимание на конечные пробелы в строке 4, я не удалил их при вычислении хеша.

Код работает, сначала нажимая единицу для входа в основной цикл. В цикле используется 1 v # v??v_ 5 75<^ p15:-1g15,:* >5+:,"floG edoC dna selzzuP gnimmargorP ">:#,_@ @ on the second line as a counter, and both prints and pushes a 356e912eec на каждой итерации. После этого печатается и отправляется новая строка. Далее данная строка передается. Наконец, код входит в цикл печати, который печатает все в стеке в обратном порядке, то есть строку, затем новую строку и, наконец, оставшуюся часть. v ??"?? #,_@e">>: <"B"<^ ung"<^"ef s.

Головоломка 7 (Оценка 3): c4db4b6af9

"{". @

Это почти то же самое, что и Puzzle 2, но с другим маршрутом, другими выходными символами, дополнительным f8b7bdf741 in the end and a quick wrap to finish it off.

 

Tиван


Рег
26 Jun, 2013

Тем
76

Постов
207

Баллов
597
  • 26, Oct 2024
  • #3

4 решения, 15 баллов

Надеюсь, я нигде не испортил конечные пробелы при создании хэшей.

Головоломка 1 (Оценка 3): "!dlroW"v >,,,, ,,v , " , ? , o l ??,??? l , e ? " @ ??^,"H" < ? ? ???? ?? ? ??

1ff5bcb1d9

Головоломка 3 (Оценка 5): "`" v v"z":,:+1< >- | @

85226eba20

Головоломка 4 (Оценка 2): 11

1

Головоломка 5 (Оценка 5): 1v v:< < >.1+:56+-| @

4f52d5b243
 

Boralk


Рег
27 Oct, 2008

Тем
63

Постов
182

Баллов
517
Тем
403,760
Комментарии
400,028
Опыт
2,418,908

Интересно