Programowanie puzzli i Code Golf

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

30
Wygeneruj uniwersalną tabelę funkcji binarnych
Jest to stycznie związane z moim dążeniem do wynalezienia ezoterycznego języka programowania . Tabela liczb binarnych 0 .. 15 może być wykorzystana do implementacji Universal Binary Function przy użyciu operacji indeksowania. Biorąc pod uwagę dwa 1-bitowe wejścia X i Y, wszystkie 16 możliwych funkcji można zakodować w 4-bitowym kodzie operacyjnym. …

5
Wydrukuj losowy labirynt
Zablokowana . To pytanie i odpowiedzi są zablokowane, ponieważ pytanie jest nie na temat, ale ma znaczenie historyczne. Obecnie nie akceptuje nowych odpowiedzi ani interakcji. Napisz program, który generuje i drukuje losowy labirynt przy użyciu wybranego algorytmu. Labirynt powinien być inny dla wielu uruchomień programu. Wysokość i szerokość podano jako …


10
Skąd oni dzwonią?
Podczas wykonywania połączeń międzynarodowych numery telefonów są poprzedzone kodem wskazującym kraj, w którym znajduje się numer. Kody te są kodami prefiksów , co oznacza, że ​​żaden kod nie jest prefiksem innego. Teraz, wcześniej tego dnia nie udało Ci się odebrać połączenia i jesteś trochę ciekawy, skąd to połączenie mogło pochodzić. …

26
Konwertuj ciąg cyfr ze słów na liczbę całkowitą
Konwertuj ciąg zawierający cyfry jako słowa na liczbę całkowitą, ignorując początkowe zera. Przykłady "four two"-> 42. "zero zero zero one"-> 1. Założenia Zgłoszenia mogą zakładać, że: Łańcuch wejściowy składa się z cyfr oddzielonych spacjami. Wszystkie słowa są poprawne (w zakresie „zero” .. „dziewięć”) i małe litery. Zachowanie pustych danych wejściowych …

2
Przecięcie dwóch trójkątów
Biorąc pod uwagę 4 punkty na płaszczyznach 2D A, B, C, D, obliczyć obszar regionu przecięcia trójkątów OABi OCD, gdzie Ojest środek płaszczyzny, mieć współrzędną (0, 0). Algorytmy działające ze stałą złożonością czasową (pod względem operacji arytmetycznych) są zalecane, ale nie wymuszone. Zasady Każdy punkt jest reprezentowany jako dwie liczby …

30
fajna, bez tytułu sekwencja
Zdefiniujmy f n (k) jako sumę pierwszych k wyrazów liczb naturalnych [1, ∞), gdzie każda liczba jest powtarzana n razy. k | 0 1 2 3 4 5 6 7 8 9 --------+------------------------------------------------- f_1(k) | 0 1 3 6 10 15 21 28 36 45 deltas | +1 +2 +3 …

9
Czy ta linia przechodzi przez ten kwadrat?
Podziel pierwszą ćwiartkę (w tym dodatnią oś x, dodatnią oś y i początek) na siatki 1x1, przy czym każda siatka jest oznaczona współrzędnymi jej lewego dolnego rogu, jak pokazano poniżej: Zauważ, że każda siatka zawiera swoje granice i wierzchołki. Używając symboli matematycznych, siatka oznaczona (m, n) reprezentuje kwadrat {(x,y) | …

30
Usuń wspólne spacje wiodące
Podczas kodowania w Pythonie czasami potrzebujesz ciągu wielowierszowego w funkcji, np def f(): s = """\ Line 1 Line 2 Line 3""" (Ukośnik odwrotny polega na usunięciu wiodącej nowej linii) Jeśli jednak spróbujesz wydrukować s, otrzymasz Line 1 Line 2 Line 3 Wcale nie tego chcemy! Zbyt wiele wiodących białych …

4
Najmniejszy program szachowy
Zainspirowany tym ostatnim artykułem opowiadającym o francuskim programatorze, który napisał w Zgromadzeniu 487-bajtowy program dla dwóch graczy (człowiek kontra człowiek), zastanawiałem się, jak małe programy szachowe mogą być w innych językach. Detale Program musi akceptować tylko legalne ruchy szachowe. Deklaracja czeku / mat nie jest konieczna (po prostu pożądana), chociaż …
19 code-golf  chess 

5
Jaka jest najbrzydsza linia kodu R, która wciąż analizuje?
Celem jest stworzenie pojedynczego wiersza kodu R, który: Robi jak najmniej W jak największej liczbie znaków (maksymalnie 100 znaków) I jest tak brzydki, jak to tylko możliwe (gdzie „brzydki” może oznaczać nieefektywne strategie obliczeniowe, obce znaki, takie jak średnik kończący itd.). Rób swoje najgorsze, gentelfowie! Obiektywne kryteria wygranej Zwycięska odpowiedź …
19 code-challenge  r 

2
Zapisz to w stylu teorii liczb
Napisz wyrażenie matematyczne, używając symboli: There exists at least one non-negative integer(zapisany jako E, egzystencjalny kwantyfikator) All non-negative integers(zapisany jako Auniwersalny kwantyfikator) + (dodanie) * (mnożenie) = (równość) >, <(operatory porównania) &(i), |(lub), !(nie) (, )(do grupowania) nazwy zmiennych co jest równoważne z instrukcją Istnieje liczba wymierna a, taka że …

9
Oblicz nadzbiór
Twoje zadanie tutaj jest proste: Biorąc pod uwagę listę zestawów liczb całkowitych, znajdź ich zestaw. Innymi słowy, znajdź najkrótszą listę zbiorów liczb całkowitych, które zawierają wszystkie elementy z oryginalnej listy zestawów (ale żadnych innych elementów). Na przykład: [1,5] and [3,9] becomes [1,9] as it contains all of the elements in …

7
Sortowanie losowe w ciemno
Oto dość powszechny wzór algorytmów sortowania: def sort(l): while not is_sorted(l): choose indices i, j assert i < j if l[i] > l[j]: l[i], l[j] = l[j], l[i] Algorytmy te działają dobrze bo indeksów ii jsą starannie wybrane, na podstawie stanu listy l. Co jednak, jeśli nie moglibyśmy zobaczyć l, …

8
Napisz klasycznego tłumacza na mózg!
Brain-Flak (skrzyżowanie Brainf ** k i Flak-Overstow) to ezoteryczny język oparty na stosach. Od czasu opublikowania tego wyzwania język ewoluował i był aktualizowany, ale ta pierwsza wersja języka znana jest jako „klasyczny flak mózgowy”. Musisz napisać program lub funkcję, która pobiera ciąg klasycznego kodu Brain-Flak i ocenia go. Spowoduje to …

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.