Programowanie puzzli i Code Golf

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

1
Znajdź najlepszy ruch w grze Tetris
Bardzo lubię Tetris, ale nie jestem w tym zbyt dobry. Raz chciałbym zobaczyć, jak ten statek kosmiczny startuje na własne oczy! A ponieważ komputery są naprawdę świetne we wszystkim, jedynym możliwym rozwiązaniem jest stworzenie dla mnie programu do grania ... z wyjątkiem tego, że zrobisz to dla mnie! Biorąc pod …
10 code-golf  tetris 

4
Jak silne są liczby nonary?
Otrzymujesz nonaralną (podstawową 9) nieujemną liczbę całkowitą składającą się z cyfr od 0 do 8, jak zwykle. Jednak liczba cyfr w tej liczbie (bez zer wiodących) jest kwadratem prefektury. Z tego powodu liczba może być ułożona w kwadratową siatkę (z zachowaną kolejnością odczytu). Przykład z 1480 (1125 podstawa 10): 14 …

15
Utwórz siatkę jak najbliżej kwadratu, jak to możliwe
Utwórz funkcję lub program, który ustawi siatkę jak najbliżej kwadratu, jak to możliwe Jako dane wejściowe otrzymasz liczbę całkowitą N , liczby całkowite (1,2,3,25 itd.) Wyjściem musi być idealna prostokątna siatka N liter możliwie najbliżej kwadratu Kwadrat (wannabe) musi składać się z jednej z liter O lub X określonych przez …

11
Napisz program, który zamienia co 17 bit pliku tekstowego na 1
Mój współpracownik i ja pracujemy nad starszym oprogramowaniem, którego czasem nienawidzimy. Za każdym razem, gdy go uruchamiasz, wszędzie pojawiają się potwierdzenia debugowania i nigdy nie jest to gwarancją, że coś zadziała. Motywacja do tej rundy golfa kodu pochodzi od mojego współpracownika mówiącego o naszym oprogramowaniu . „To tak, jakbyś za …

18
Kurczące się liczby
Dane wejściowe to tablica (co najmniej 3, maksymalnie 20) różnych liczb całkowitych. Każda liczba całkowita jest większa niż -1000 i mniejsza niż 1000. Twoim zadaniem jest zmniejszanie liczb poprzez „liniowe mapowanie” ich od 0.0do 1.0. Oznacza to, że najmniejsza liczba w tablicy zostanie zmapowana na 0,0, największa na 1,0. Dostajesz …


3
matematyczne literały liczbowe
przedmowa W bardzo gorącej sytuacji musisz iść jeszcze dalej z golfem. (np. w wyzwaniu, w którym twoja odpowiedź ma 100 znaków, a żenujące jest to, że nie udało ci się uzyskać 99 znaków). W takim przypadku od teraz używasz algorytmu zwycięzcy tego wyzwania :) cel Musisz napisać program, który pobierze …

12
Wymień kombinacje elementów w zestawie
Biorąc pod uwagę zestaw nelementów, wyzwaniem jest napisanie funkcji, która wymienia wszystkie kombinacje kelementów w tym zestawie. Przykład Set: [1, 7, 4] Input: 2 Output: [1,7], [1,4], [7,4] Przykład Set: ["Charlie", "Alice", "Daniel", "Bob"] Input: 2 Output ["Daniel", "Bob"], ["Charlie", "Alice"], ["Alice", "Daniel"], ["Charlie", "Daniel"], ["Alice", "Bob"], ["Charlie", "Bob"] Reguły …
10 code-golf 


1
Ile istnieje sudoku?
To nie jest solver Sudoku ani sprawdzanie Sudoku. Twoim wyzwaniem jest napisanie funkcji lub skryptu, który podając jako dane wejściowe rozmiar „bloku” łamigłówki 2D Sudoku (czyli 3 dla klasycznej planszy 9x9 , 4 dla planszy 16x16 itp.) Obliczy przybliżoną liczbę różnych łamigłówek (rozwiązań), które istnieją dla tego rozmiaru. Na przykład, …

3
To są moje szczęśliwe kości [zamknięte]
Zamknięte. To pytanie jest nie na temat . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby było na temat Code Code Stack Exchange. Zamknięte 2 lata temu . Zaimplementuj program lub funkcję, która symuluje wspólne kości do gier RPG. Powinien obsługiwać przynajmniej d6 i d20, dwie najczęściej …

10
Konwertuj tablicę bajtów na base64
Twoim zadaniem jest napisanie funkcji / programu, który konwertuje tablicę bajtów (tj. Tablicę liczb całkowitych od 0 do 255) na base64. Korzystanie z wbudowanych koderów base64 jest niedozwolone. Wymagana implementacja base64 to RFC 2045. (użycie „+”, „/” i obowiązkowe wypełnienie za pomocą „=”) Najkrótszy kod (w bajtach) wygrywa! Przykład: Dane …

8
Król murów
Ogłoszenie To wyzwanie się zakończyło i nie zostanie ponownie ocenione, ale możesz opublikować odpowiedzi i przetestować swój program na tle innych za pomocą Programu Kontroli! Celem tego wyzwania jest stworzenie sztucznej inteligencji do wygrania walki z inną sztuczną inteligencją poprzez strategiczne narysowanie ściany na siatce 25 x 25 w celu …

2
Roboty! Zbierz te pikle!
Wydaje mi się, że wpadłem w zalew. Dosłownie Upuściłem kilka pikli na podłogę, a teraz wszystkie są rozrzucone! Musisz mi pomóc zebrać je wszystkie. Och, czy wspominałem, że mam do dyspozycji kilka robotów? (Wszystkie są też rozrzucone po całym mieście; jestem naprawdę kiepski w organizowaniu rzeczy.) Musisz wziąć wkład w …

3
Rozwiń zakładki (zaimplementuj rozwinięcie (1))
Twoim zadaniem tym razem jest zaimplementowanie wariantu expand(1)narzędzia POSIX , który rozszerza tabulatory na spacje. Twój program ma wziąć specyfikację tabstop, a następnie wczytać dane wejściowe w standardzie i zastąpić znaki tabulacji w danych wejściowych odpowiednią ilością spacji, aby przejść do następnego tabstop. Wynik należy zapisać na standardowe wyjście . …

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.