Programowanie puzzli i Code Golf

Pytania i odpowiedzi dotyczące programowania entuzjastów puzzli i graczy kodowych

22
Trump potrzebuje twojej pomocy, aby powstrzymać Starmana!
Człowiek z gwiazd ma przyjść na Ziemię! Na szczęście prezydent Stanów Zjednoczonych Donald Trump ma nieskończoną śmierć. Korzystając z tej kości, może wyczarować liczbę, którą ty , burmistrz Podunk , musisz użyć, aby ustalić, kto powinien zostać wysłany, aby zatrzymać najeźdźcę! Ale bądź ostrożny, możesz wysłać tylko ograniczoną liczbę bajtów …

29
Czy to jest kod prefiksu?
W teorii informacji „kod prefiksu” to słownik, w którym żaden z kluczy nie jest prefiksem innego. Innymi słowy, oznacza to, że żaden ciąg nie zaczyna się od żadnego z pozostałych. Na przykład {"9", "55"}jest kodem prefiksu, ale {"5", "9", "55"}nie jest. Największą zaletą tego jest to, że zakodowany tekst można …

11
Mnożenie przez samodzielną modyfikację
... przynajmniej dla pewnej definicji „samodzielnej modyfikacji”. Zadanie W tym wyzwaniem, twoim zadaniem jest napisać trzy struny A, Bi Cktóre spełniają następujące właściwości. Ciąg Bma długość co najmniej 1. Dla każdego n ≥ 0ciąg jest prawidłowym programem (co oznacza pełną wersję programu lub definicji funkcji) w wybranym języku programowania. Powtórzenie …

3
Tiny Lisp, malutki tłumacz
Programiści Lisp mogą pochwalić się tym, że Lisp jest potężnym językiem, który można zbudować z bardzo małego zestawu prymitywnych operacji . Zastosujmy ten pomysł w praktyce, grając w golfa dla tłumacza dialektu o nazwie tinylisp. Specyfikacja języka W tej specyfikacji każdy warunek, którego wynik jest opisany jako „niezdefiniowany”, może zrobić …

3
Programowanie bloków Tetris (dosłownie)
W grze Tetris istnieje 7 rodzajów klocków lub Tetr i minoes , które są matematycznie znane jako tetr o minoes, ponieważ wszystkie są wykonane z 4 kwadratowych segmentów: Posiadają nazwy I, J, L, O, S, T i Z, które odpowiadają ich przybliżonym kształtom. Przy obrotach 90 ° istnieje łącznie 19 …

14
{Numery kręcone};
W ezoterycznym języku programowania Curly programy składają się wyłącznie z nawiasów klamrowych {}i średników ;. Pomimo tego skromnego zestawu narzędzi, Curly ma literały, które mogą reprezentować dowolną nieujemną liczbę całkowitą. Format jest jednak nieco trudny do odczytania przez niewtajemniczonych, więc napiszmy kod, który przeprowadzi dla nas konwersję. Format liczb Liczby …

10
Zweryfikuj tablicę Saper
Twoim celem jest sprawdzenie, czy wypełniona tablica Saper jest ważna. Oznacza to, że każda liczba jest prawidłową liczbą min w sąsiadujących z nią komórkach, w tym przekątnych. Plansza się nie zawija. Jak zwykle powinieneś podać funkcję lub program, a najkrótszy kod w bajtach wygrywa. Zobacz także poprzednie wyzwania dotyczące generowania …

22
Mnożenie XOR
Twoim celem jest zaimplementowanie operacji mnożenia XOR (bez nośnika ), zdefiniowanej poniżej, w jak najmniejszej liczbie bajtów. Jeśli myślimy o bitowej XOR ( ^) jako dodatku binarnym bez przenoszenia 101 5 ^ 1001 9 ---- 1100 12 5^9=12 możemy wykonać mnożenie XOR @, wykonując binarne długie mnożenie, ale wykonując krok …

15
Równoważenie słów
To wyzwanie zostało opublikowane na subreddicie DailyProgrammer i pomyślałem, że będzie to świetny kandydat do wyzwania golfowego. Ustalenie, czy saldo litery odbywa się na podstawie odległości od punktu równowagi i wartości litery. Wartość litery można ustalić, przyjmując jej jedną indeksowaną pozycję w alfabecie, lub odejmując 64 od jej wartości ASCII. …
33 code-golf 

23
Biplex: ważny bezużyteczny operator
Wkład Lista od 1 do 255 dodatnich liczb całkowitych (włącznie), każda w zakresie od 1 do 2 32 - 1 (włącznie). Twój format wejściowy nie musi być identyczny z przypadkami testowymi. Podanie danych bez zer wiodących musi zostać zaakceptowane. Podanie z wiodącymi zerami nie jest akceptowane. Między liczbami całkowitymi możesz …

11
To pytanie ma swoje wzloty i upadki
Dane wejściowe będą się składały z następujących znaków: ^: Idź w górę v: Zejdź jeden ▲lub k: Idź o dwa wyżej ▼lub j: Zejdź dwa Na przykład następujące dane wejściowe: ^^▲^v▼▲^^v dałoby następujące dane wyjściowe: ^ ^ ^ v ▲ v ▲ ^ ▼ ^ Sekwencje specjalne, które poruszają kursorem, …

6
Cyfrowa logika oparta na siatce (płytki duodyadyczne)
Płytki duodyadyczne są rodzajem kwadratowych bloków funkcyjnych które pobierają dwa dane wejściowe, jeden z góry i jeden z lewej strony, i mają dwa wyjścia, jeden po prawej stronie i jeden od spodu. Każde z ich wyjść stanowi osobną funkcję obu wejść. Na przykład, jeśli #reprezentuje płytki rodzajowe, prawo wyjściowy Rjest …

14
Morse Nowy Rok
To jest Tygodniowe Wyzwanie nr 1. Temat: Przetwarzanie audio Twoim zadaniem jest napisanie programu, który zapisuje plik audio do płyty (w formacie do wyboru), który zawiera kod Morse'a za 2015, tj ..--- ----- .---- ..... Możesz wybrać dowolny rodzaj dźwięku dla segmentów, np. Falę sinusoidalną o pojedynczej częstotliwości, akord, szum, …

15
Mrówka na kostce
Mrówka chodzi wzdłuż krawędzi (nie ścian) sześcianu szkieletowego. Każdy napotkany wierzchołek przedstawia widelec, z którego rozgałęziają się dwie nowe krawędzie. Mrówka wybiera, w którą stronę skręcić - leftlub right. Kierunki te odnoszą się do mrówki, która jest zwrócona do wierzchołka i znajduje się poza sześcianem. Twoim celem jest ustalenie, na …
33 code-golf 

20
Napisz Polyquine
Poliquina jest zarówno quine, jak i polyglot. 1 Musisz napisać quine, która jest ważna w co najmniej dwóch różnych językach. To jest kod golfowy, więc wygrywa najkrótsza odpowiedź (w bajtach). 1 Wymyśliłem to. A raczej zrobili to Geobici . Najwyraźniej nie był też pierwszym . Zasady dla Quines Akceptowane są …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.