Programowanie puzzli i Code Golf

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

3
Liczenie prętów; policz swoje pręty
Trochę tła Pręty liczące to małe słupki (o długości 3-14 cm), które były używane przez matematyków z wielu kultur azjatyckich przez ponad 2000 lat do reprezentowania dowolnej liczby całkowitej lub ułamka. (W tym zadaniu skupimy się jednak na liczbach całkowitych bez znaku). Była też wersja napisana, zwana liczbami prętowymi. Oto …

3
Generator kodów artystycznych ASCII
Mam program, który generuje sformatowany kod Brainfuck. Uruchamiam mój program ./example "S" i wynik jest +[>+ < +++ ] >--. który drukuje literę S w Brainfuck. Twoim celem jest napisanie programu, który akceptuje łańcuch jako dane wejściowe i wyjściowe w innym języku, który wypisuje ten łańcuch. Kod źródłowy twoich programów …

6
Najkrótszy skrypt, który podaje czas, jaki upłynął od znacznika czasu Unix
Aby wygrać to wyzwanie, należy napisać najkrótszy skrypt „timeago”, który wyświetla liczbę dekad, lat, tygodni, dni, godzin, minut i sekund między danym znacznikiem czasu Unix a czasem uruchomienia skryptu. Musisz podać różnicę czasu w „najniższych kategoriach”, np. 1 weekNie 7 days, 9 yearsnie 0 decades 9 years. Musisz także poprawnie …
9 code-golf  date 

4
Leśna ścieżka
Po katastrofalnej przejażdżce kajakiem spadłeś z wodospadu na końcu rzeki. Twoje kajak eksplodowało, ale udało ci się przetrwać eksplozję. Jednak twoja podróż po rzece zbiegła całkowicie z mapy - teraz zagubiłeś się w środku lasu. Na szczęście nadal masz umiejętności programistyczne, więc zdecydujesz się wyrzeźbić program na boku drzewa, aby …

3
Sprawdź poprawność rozwiązań Loopy
Jest to dodatkowe wyzwanie dla wyzwania generowania łamigłówek Loopy . Możesz spróbować rozwiązać to wyzwanie, zanim spróbujesz trudniejszego wyzwania w poprzednim łączu. Celem tego wyzwania jest sprawdzenie rozwiązania łamigłówki. Proszę wziąć całą dokumentację dotyczącą tego, czym jest zwariowana łamigłówka z poprzedniego linku. Rozwiązana łamigłówka jest sformatowana w bardzo podobny sposób, …
9 code-golf 

4
Strojenie strun
Zadanie Napisz program, który określi, że zabrzmiała nuta, a także ile centów nie zostało dostrojone, struny dostrojonej do określonej częstotliwości i wciśniętej w danym punkcie. Dla uproszczenia załóżmy, że częstotliwość wytwarzanego dźwięku i długość struny po prawej stronie od miejsca jej wciśnięcia są odwrotnie proporcjonalne. Uwaga: to zadanie dotyczy wyłącznie …

3
Oblicz, ile kostek można wyciąć z jednej kostki
Wyobraź sobie kostkę, którą możemy pokroić na mniejsze kostki bez pozostawiania kawałków. Sprawdź, ile kostek można wyciąć. Na przykład, sześcian można pokroić na 8, 27 (oczywiście 3 potęgi liczb całkowitych) i 20 (19 małych kostek plus jeden osiem razy większy od pozostałych, patrz zdjęcie). Zobacz tutaj pomoc: http://mathworld.wolfram.com/CubeDissection.html Program powinien …

6
Numeracja permutacji
Wyzwanie Dla danego zestawu n liczb całkowitych napisz program, który wyświetli jego indeks leksykograficzny. Zasady Dane wejściowe muszą być tylko zbiorem unikatowych nieujemnych liczb całkowitych oddzielonych spacjami. Powinieneś wypisać indeks leksykograficzny (zakres od 0 do n! -1 włącznie) permutacji. Nie można używać bibliotek permutacji ani wbudowanych permutacji. Nie możesz wygenerować …

5
Znajdź najbardziej wyszukaną liczbę pierwszą
Wprowadzenie Rozważ proces pobierania dodatniej liczby całkowitej n w pewnej bazie b i zastępowania każdej cyfry jej reprezentacją w podstawie cyfry po prawej stronie. Jeśli cyfra po prawej to 0, użyj podstawy b . Jeśli cyfra po prawej to 1, użyj unarskiego z zerami jako znakami sumy. Jeśli po prawej …

2
Zbuduj konwerter EBCDIC za pomocą bramek logicznych NAND
W tym pytaniu zdefiniowano mapowanie między EBCDIC a nadzbiorem ISO-8859-1. Twoim zadaniem jest zbudowanie sieci dwuwejściowych bramek NAND, które przyjmą osiem wejść A1, A2, A4, ..., A128reprezentujących znak EBCDIC i zwrócą osiem wyjść B1, B2, B4, ..., B128reprezentujących odpowiedni znak „ISO-8859-1” zgodnie z tym odwzorowaniem. Aby uprościć rzeczy, możesz użyć …

6
Znajdź najgłębszy węzeł drzewa binarnego
Napisz program, który pobiera drzewo binarne jako dane wejściowe i wyświetla najgłębszy węzeł i jego głębokość. W przypadku remisu wydrukuj wszystkie zaangażowane węzły oraz ich głębokości. Każdy węzeł jest reprezentowany jako: T(x,x) T(x) T gdzie Tjest identyfikatorem jednego lub więcej znaków alfanumerycznych, a każdy xjest innym węzłem. Oto prosta definicja …

24
Wygeneruj tabelę grupową dla Z_n
Grupy są szeroko stosowaną strukturą w matematyce i mają zastosowania w informatyce. To wyzwanie kodu dotyczy mniejszej liczby # znaków, aby utworzyć tabelę grupy dla grupy addytywnej Z n . Jak zbudowana jest tabela: Dla Z n elementami są {0, 1, 2, ..., n-1}. Tabela będzie miała n wierszy i …

4
Znajdź następny „interesujący” czas
Zdarzyło mi się dzisiaj rzucić okiem na zegarek dokładnie o 11:11:11 (a dziś jest 1/11; szkoda, że ​​to nie 2011), i to sprawiło, że pomyślałem: wiem! Powinienem z tego zrobić pytanie do golfa! Jestem głupkiem W każdym razie twoim wyzwaniem jest przyjęcie godziny, minuty i sekundy jako danych wejściowych i …
9 code-golf  date 

15
Losowo bez podstawy czasu [zamknięte]
Zamknięte . To pytanie wymaga szczegółów lub jasności . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Dodaj szczegóły i wyjaśnij problem, edytując ten post . Zamknięte 2 lata temu . Komputery nie znikąd tworzą losowe liczby bez podstawy, ponieważ najprawdopodobniej czas jest uniwersalną podstawą losowości. Chcę, abyś utworzył kod, …

2
Ułamkowe fragmenty kodu w usłudze Stack Exchange
Twoim celem jest wprowadzenie dowolnego dowolnego tekstu, takiego jak: This is some text I wyślij ten tekst sformatowany jako kod dla postów (Markdown o smaku SE) i komentarzy (mini-Markdown) na Stack Exchange, takich jak: `This is some text` `This is some text` Jest jednak trudniej. Rozważ dane wejściowe: Perl has …
9 code-golf 

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.