Programowanie puzzli i Code Golf

30
Przetwarzaj komentarze z mojego ezoterycznego kodu

Na początku tego tygodnia dowiedzieliśmy się, jak formatować ezoteryczne języki do komentowania. Dzisiaj zrobimy coś odwrotnego. Potrzebuję napisać program lub funkcję, która analizuje dobrze skomentowany ezoteryczny kod i analizuje komentarze, zwracając tylko kod. Korzystając z przykładów z...

30
B u i l dan e s t

Wyzwanie jest proste: napisz program lub funkcję, która, gdy otrzyma skończoną nieujemną liczbę całkowitą, wyprowadza zagnieżdżoną tablicę. Zasady Twój kod musi wygenerować unikalną poprawną tablicę zagnieżdżoną dla każdej liczby całkowitej 0 ‌ ≤ n ‌ <2 31 . Każdy możliwa tablica zagnieżdżona...

30
Ogólna zasada wielkich liter

Zgodnie z tą witryną ogólną zasadą zalecaną przez Podręcznik stylu drukowania biurowego rządu USA jest Wielkie słowa w tytułach publikacji i dokumentów, z wyjątkiem a, an, the, at, by, in, of, on, up, i, as, ale, lub, i nor. Może to nie być prawda, ponieważ nie mogę znaleźć takiej rekomendacji...

30
Łowienie sieci sześcianowych

Kostki mogą być wykonane z sześciu kwadratów jako boków. Ale możesz również złożyć trzy prostokąty 2x1 na pół i skleić je ze sobą, tworząc sześcian. Teraz w tym wyzwaniu otrzymujesz zestaw elementów, z których każdy składa się z kwadratów, i musisz ustalić, czy możesz wybrać elementy, aby utworzyć...

30
Z północy na północ z północy na południowy wschód

Biorąc pod uwagę ciąg N, S, E i W, wyślij łożysko (kąt w kierunku zgodnym z ruchem wskazówek zegara od północy w stopniach), popraw do 5 miejsc po przecinku. W tradycyjnej notacji kompasu ciąg składa się tylko z 2 takich znaków (takich jak NNW lub ESE). Tutaj musisz również zaakceptować ciągi...

30
Przeplot ciągi

Inspiracja. * Nie mogę uwierzyć, że wcześniej nie mieliśmy tego wyzwania: Zadanie Biorąc pod uwagę jeden lub więcej ciągów ASCII do wydrukowania, przeplataj je, pobierając po jednym znaku z każdego ciągu, cyklicznie aż do braku znaków. Jeśli w ciągu znaków zabraknie znaków przed pozostałymi, po...

30
Wyjście kolorów HTML

16-kolorowa paleta CGA (znana również jako kolory HTML ) to zestaw 16 kolorów używanych przez wczesne karty graficzne. Celem tego wyzwania jest wyprowadzenie wszystkich 16 z nich, w formacie szesnastkowym ( RRGGBB), w porządku rosnącym według wartości szesnastkowej, oddzielonych znakami nowej...

30
Suma kolumnowa

Biorąc pod uwagę niepustą listę niepustych wierszy liczb, oblicz mądrą kolumnę , która jest kolejną listą o długości najdłuższego wiersza wejściowego. Pierwszy wpis listy wyjściowej jest sumą wszystkich pierwszych wpisów w wierszach wejściowych, drugi to suma wszystkich drugich elementów (jeśli są...

30
Generuj przypadkowe wykolejenie

Opis wyzwania „Wykroczenie” sekwencji jest permutacją, w której żaden element nie pojawia się w pierwotnej pozycji. Na przykład ECABDjest odstępstwem ABCDE, ale CBEDAnie jest: ABCDE | | <- B and D are in their orignal positions CBEDA Biorąc pod uwagę sekwencję, wygeneruj jej przypadkowe...

30
Digital Sum Fibonacci

Wszyscy znamy sekwencję Fibonacciego : 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765 Zamiast tego f(n) = f(n-1) + f(n-2)weźmiemy cyfrową sumę poprzednich 2 wpisów. Sekwencja powinna zacząć się od tego 0, 1, po czym różnice są szybko widoczne. Ta...

30
Trójkąty ASCII

Twoim zadaniem jest napisanie programu lub funkcji, która wypisze trójkąt ASCII. Wyglądają tak: |\ | \ | \ ---- Twój program pobierze pojedyncze dane liczbowe nz ograniczeniami 0 <= n <= 1000. Powyższy trójkąt miał wartość n=3. Trójkąt ASCII będzie miał nukośniki odwrotne ( \) i pionowe...

30
Obracanie matrycy 2D

Powiedzmy, że mam następującą macierz (2D): [[1, 2, 3, 4 ], [5, 6, 7, 8 ], [9, 10, 11, 12], [13, 14, 15, 16]] Obróć matrycę w kierunku przeciwnym do ruchu wskazówek zegara R (nie w przyrostach 90 stopni, tylko o 1 liczbę za każdym razem), 1 2 3 4 2 3 4 8 3 4 8 12 5 6 7 8 --> 1 7 11 12...

30
Charlie, Oscar, Delta, Echo

Dużą część komunikacji radiowej stanowi alfabet fonetyczny NATO , który koduje litery jako słowa, aby ułatwić ich zrozumienie przez komunikatory. Twoim zadaniem, jeśli chcesz to zaakceptować, jest wydrukowanie ich jeden po drugim. Musisz wydrukować ten dokładny ciąg na standardowe wyjście: A:...

30
Czy powinniśmy być przyjaciółmi?

Zauważ, że to pytanie dotyczy przede wszystkim struktur danych Wprowadzenie Bacefook chce, aby ludzie byli bardziej przyjaźni! W związku z tym wdrażają nowy system sugerowania znajomych! Twoim zadaniem jest pomóc Bacefook we wdrożeniu nowego systemu sugerowania. Dane techniczne: Twój program...

30
Jakie jest moje drugie imię?

Uwaga: Zwycięska odpowiedź zostanie wybrana na dzień 12.12.17 . Aktualnym zwycięzcą jest Jolf, 1 bajt . Dziwię się, że nie mieliśmy jeszcze wyzwania, jak brzmi moje drugie imię na tej stronie. Dużo szukałem, ale nic nie znalazłem. Jeśli jest to duplikat, oznacz go jako taki. Twoje...

30
Miałeś mnie na cześć

Zadanie Wczytaj prawdopodobnie nieskończony strumień tekstowy lub plik, wyświetlając jego zawartość, aż słowo hellozostanie wypisane, zgodnie z następującymi zasadami. Po hellowygenerowaniu kod powinien zostać natychmiast zamknięty. Nie powinien na przykład czekać na nową linię. Twój kod...

30
Wskazówki dotyczące pisania quinesów

Quine to program, który daje moc, która jest identyczna do kodu źródłowego programu. Na tej stronie internetowej zasadniczo dbamy tylko o odpowiednie quinesy (w chwili pisania tego tekstu obecna definicja brzmi: „część danych wyjściowych jest kodowana przez inną część programu”). Jakie masz porady...

30
Odwróć numer trójkąta

Załóżmy, że podajesz liczby całkowite w trójkącie, a następnie odwracasz je od lewej do prawej. Podając liczbę, wypisz numer, na który została wysłana. To jest odwrotne odwzorowanie. 1 1 2 3 3 2 4 5 6 <---> 6 5 4 7 8 9 10 10 9 8 7 11 12 13 14 15 15 14 13 12 11 To jest n-ty element...

30
Znajdź najbliższą większą liczbę

Zadanie Biorąc pod uwagę dowolną liczbę liczb całkowitych, np .: [-1,476,578,27,0,1,-1,1,2] oraz indeks tej tablicy (w tym przykładzie zastosowano indeksowanie na podstawie 0 , chociaż można również użyć indeksowania na podstawie 1 ). index = 5 v [-1,476,578,27,0,1,-1,1,2] Następnie zwróć...