Programowanie puzzli i Code Golf

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

1
Golfista Auto BATCH
Uwielbiam BATCH, pomimo szokującego braku komend funkcjonalnych, nawet ze względu na brak obsługi liczb całkowitych. Czemu? Ponieważ to działa: SET var=SET %var% i=0 Oznaczałoby to: SET var=SET SET i=0 Fantastycznie, prawda? Wcześniej stosowałem tę technikę w programie BATCH , ponieważ oszczędza ona bajty! Twoim wyzwaniem, jeśli je zaakceptujesz, będzie zagranie …
25 string  metagolf 

3
Zbuduj program za pomocą jednego prostego GOTO
Twoim zadaniem jest zbudowanie jak największego programu, który używa dokładnie jednego GOTO, bez którego cały program (lub przynajmniej jego duża część) musi zostać całkowicie zrestrukturyzowany. Wynik jest liczony jako liczba instrukcji w kodzie, które zmieniają miejsca lub są nowo wprowadzone (usunięcie instrukcji nie dodaje do wyniku), gdy kod jest restrukturyzowany …

7
Tłumacz ustny
Na podstawie komentarza George'a Edisona do tego pytania napisz najmniejszego tłumacza. Możesz użyć wybranego przez siebie języka. Puste języki się nie liczą. Twój program musi mieć co najmniej dwa znaki. Program nie musi interpretować całego języka, a jedynie kompletny zestaw funkcji językowych Turinga (zawierający tłumacza). Quines się nie liczy. Nie …


25
Magiczne liczby popcount
Istnieje znany trudny algorytm zliczania liczby ustawionych bitów w 32-bitowej liczbie całkowitej bez znaku: int popcount(unsigned x) { x = (x & 0x55555555) + ((x >> 1) & 0x55555555); x = (x & 0x33333333) + ((x >> 2) & 0x33333333); x = (x & 0x0F0F0F0F) + ((x >> 4) & …


30
Porozumienie 465
Oto wyzwanie. Napisz kod, aby wyprowadzić wszystkie liczby całkowite z zakresu. Brzmi łatwo, ale oto podstępna część. Zacznie się od najniższej liczby, a następnie najwyższej. Następnie najniższa liczba, która nie jest jeszcze w tablicy. Zatem najwyższy, którego jeszcze nie ma. Przykład: Weźmy od 1 do 5 jako nasz początek Liczby …
24 code-golf 

30
Dekompresja sztuki ASCII od liczby bazowej n
Jest to inspirowane odpowiedzią 05AB1E autorstwa Magic Octupus Urn . Biorąc pod uwagę dwa argumenty, dodatnią liczbę całkowitą i ciąg / listę znaków: Przetłumacz liczbę na base-n, gdzie n jest długością łańcucha. Dla każdego znaku zamień każdy wygląd indeksu tego znaku w liczbie podstawowej n na ten znak. Wydrukuj lub …

4
Nie ma sprawy! …Albo to jest?
Wprowadzenie Rozmowa uliczna może być naprawdę trudna do zrozumienia, szczególnie dla programistów, którzy nie są znani z tego, że są bardzo uliczni. Twoim zadaniem jest stworzenie tłumacza, który pomoże nam wszystkim przetrwać w środowisku miejskim. Wyzwanie Biorąc pod uwagę zdanie angielskie jako dane wejściowe, utwórz program lub funkcję, która określa, …

21
Ile razy mam to naciskać?
Wszyscy jesteśmy przyzwyczajeni do old-schoolowej klawiatury telefonu, prawda? W celach informacyjnych wygląda to tak: Biorąc pod uwagę ciąg znaków składający się tylko z małych liter ASCII i pojedynczych spacji , Twoim zadaniem jest zwrócenie liczby naciśnięć, które należy wykonać, aby wpisać pełny ciąg za pomocą klawiatury telefonu, jak powyżej. Dla …

7
Rozwiń sześciokąt
Biorąc pod uwagę sześciokąt artystyczny ASCII jako dane wejściowe, wyjmij taki, którego boki są o jedną jednostkę dłuższe. _____ ____ / \ / \ / \ / \ / \ \ \ => \ \ \ / \ / \____/ \ / \_____/ Sześciokąty wejściowe będą miały symetrię 180 stopni, …

17
Utwórz listę snakingowych liczb poniżej 50 000
Snaking Number Challenge Zastanawiam się, ile liczb snakingowych jest między 1 a 50 000? Snaking Numbers w tej grze to liczby, które można wpisać na tradycyjnej klawiaturze numerycznej (format poniżej), przesuwając jeden klawisz w górę, w dół, w lewo lub w prawo. 7 8 9 4 5 6 1 2 …
24 code-golf 

3
Rysowanie drzewa z tablicy
Biorąc pod uwagę potencjalnie zagnieżdżoną, niepustą tablicę jednocyfrowych liczb całkowitych dodatnich (nie gwarantowanych niepowtarzalnych), wyprowadzaj reprezentację ASCII-art jako drzewo, używając znaków rysujących ramkę ┌ ┴ ┐ ─ │ ┬ ┼. (Zostały one skopiowane z Code Page 437, ale możesz użyć dowolnej równoważnej reprezentacji). Każda liczba całkowita tablicy powinna być liściem …

9
Wygeneruj kwadrat grecko-łaciński
zrzeczenie się odpowiedzialności: nie znam żadnych rozwiązań innych niż bruteforce Kwadrat Graeco-Latin to, dla dwóch zestawów tej samej długości nnn , układ komórek n×nn×nn \times n , z których każdy zawiera unikalną (przez cały kwadrat) parę elementu pierwszego zestawu i element drugiego zestawu, takie jak że wszystkie pierwsze elementy i …
24 code-golf 

13
Dwa palindromy to za mało
Niektóre liczby, takie jak , są palindromami w podstawie 10: jeśli napiszesz cyfry w odwrotnej kolejności, otrzymasz ten sam numer.142411424114241 Niektóre liczby są sumą 2 palindromów; na przykład lub .110=88+22110=88+22110=88+222380=939+14412380=939+14412380=939+1441 W przypadku innych liczb 2 palindromy nie wystarczą; na przykład 21 nie można zapisać jako sumy 2 palindromów, a najlepsze, …

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.