Programmierrätsel & Code Golf

Fragen und Antworten zum Programmieren von Puzzle-Enthusiasten und Code-Golfern

10
Widerstände von ungewöhnlichem Wert
Einführung Bei der Erstellung eines Elektronikprojekts kann ein Schaltplan einen Widerstand mit einem ungewöhnlichen Wert (z. B. 510 Ohm) erfordern. Sie überprüfen Ihren Teilebehälter und stellen fest, dass Sie keine 510-Ohm-Widerstände haben. Aber Sie haben viele gemeinsame Werte über und unter diesem Wert. Wenn Sie Widerstände parallel und in Reihe …

5
Regex Golf: Regionen Italiens gegen Staaten der USA
Wir haben bereits ein Meta-Regex-Golf-Problem , das vom xkcd-Comic inspiriert ist Aber dieser Regex-Golf macht auch Spaß! Ich möchte zwischen den Bundesstaaten der USA und den Regionen Italiens unterscheiden. Warum? Ich bin Staatsbürger beider Länder und habe immer Probleme damit * . Die Regionen von Italien sind Abruzzo, Valle d'Aosta, …

5
Tipps zum Golfen in Brainfuck
Welche allgemeinen Tipps haben Sie zum Golfen in Brainfuck? Ich bin auf der Suche nach Ideen, die sich generell auf Code-Golf-Probleme anwenden lassen, die zumindest etwas spezifisch für Brainfuck sind (z. B. "Kommentare entfernen" ist keine Antwort). Bitte posten Sie einen Tipp pro Antwort.

6
Ermitteln Sie, welche Programmiersprache ein Snippet ist
Ihre Herausforderung besteht darin, einen Quellcode als Eingabe zu verwenden und auszugeben, in welcher Programmiersprache er geschrieben ist. Beispielsweise könnten Sie die Eingabe haben class A{public static void main(String[]a){System.out.println("Hello, World!");}} Und Ausgabe Java Ihre beiden Hauptziele sind Vielfalt (wie viele Programmiersprachen können Sie erkennen) und Genauigkeit (wie gut Sie diese …

6
Kreise, die das Flugzeug teilen
Aufgabe Sie erhalten eine Reihe von Kreisen in der Ebene mit ihren Mittelpunkten auf der Linie y = 0 . Es ist garantiert, dass kein Kreispaar mehr als einen gemeinsamen Punkt hat. Sie müssen bestimmen, in wie viele Bereiche die Kreise die Ebene unterteilen. Eine Region ist eine einschlussmaximale zusammenhängende …

4
Lösen von drei offenen Problemen mit einem haltenden Oracle
Sie erhalten die Funktionen: h1 (f, * args) und h2 (f, * args) Beides sind für Sie bereits definierte Methoden (hier kennzeichnet der Stern eine variable Anzahl von Argumenten) f ist eine Funktion, * args ist eine Liste von Parametern, die an diese Funktion übergeben werden sollen h1 gibt einen …
23 code-golf  math 

6
Lego-Übersetzungsverhältnisse
Ich baue einen riesigen Legoroboter und muss einige bestimmte Übersetzungsverhältnisse mithilfe eines Satzes von Zahnrädern erzeugen. Ich habe viele Zahnräder mit den üblichen Lego-Zahnradgrößen: 8, 16, 24 oder 40 Zähne. Schreiben Sie ein Programm, das ich verwenden kann, indem ich ein Übersetzungsverhältnis eingebe, und das Programm sagt mir, welche Kombination …
23 code-golf  math 

5
Mach eine Partie Go
Ein Go- Spiel zu erzielen, ist keine leichte Aufgabe. In der Vergangenheit gab es mehrere Debatten darüber, wie Regeln entworfen werden sollen, um alle seltsamen Eckfälle abzudecken, die auftreten können. Glücklicherweise müssen Sie bei dieser Aufgabe keine komplizierten Dinge wie Leben und Tod oder die Erkennung von Seki erledigen. In …

3
Löse das 15 Puzzle (das Schiebepuzzle)
Das 15-Puzzle ist ein berühmtes Puzzle, bei dem 15 Kacheln in einem 4x4-Raster verschoben werden. Ausgehend von einer zufälligen Konfiguration besteht das Ziel darin, die Kacheln in der richtigen Reihenfolge anzuordnen. Hier ist ein Beispiel eines gelösten 15-Puzzles: 01 02 03 04 05 06 07 08 09 10 11 12 …

7
Konvertiert Infix-Ausdrücke in Postfix-Notation
Als ich den Titel dieser geschlossenen Frage sah , fand ich, dass es sich um eine interessante Code-Golf-Herausforderung handelte. Lassen Sie es mich als solches darstellen: Herausforderung: Ein Programm schreiben, Expression oder Unterprogramm , das, ein arithmetischer Ausdruck in gegebenem Infix - Schreibweise , wie 1 + 2gibt den gleichen …
23 code-golf  math 

21
Wandle eine wiederholte Dezimalstelle in einen Bruch um
Diese Frage muss sich nicht nur auf das Beenden von Dezimalstellen beziehen - wiederholte Dezimalstellen können auch über einen Algorithmus in Brüche umgewandelt werden. Ihre Aufgabe ist es, ein Programm zu erstellen, das eine wiederholte Dezimalzahl als Eingabe verwendet, und den entsprechenden Zähler und Nenner (in niedrigsten Ausdrücken) auszugeben, der …

12
Dithering eines Graustufenbilds
Verwandeln Sie ein Graustufenbild mit Ihrem eigenen Algorithmus in reines Schwarzweiß. Richtlinien: Sie müssen sich einen eigenen neuen Algorithmus ausdenken. Sie können keine vorhandenen Algorithmen (z. B. Floyd-Steinburg) verwenden, aber Sie können die allgemeine Technik verwenden. Ihr Programm muss in der Lage sein, ein Bild zu lesen und ein Bild …

8
Neuerstellung von Piet Mondrian Composition
Guten Nachmittag, Ihr Ziel ist es, in möglichst wenigen Quellcode-Bytes ein Bild von Piet Mondrians „Komposition“ (z. B. Komposition 10 ) nachzubilden . Die Neuerstellung kann entweder die tatsächlichen Farben verwenden oder durch die entsprechenden Farben aus der Windows-Standardfarbpalette 16 ersetzen . Ihre Neuerstellung kann in PNG, BMP oder NetPBM …

30
Buchstaben in Telefonnummern
Problem: Sie erstellen ein neues Telefon, auf dem beispielsweise spezialisierte Telefonnummern eingegeben werden können, 1-800-programdie dann automatisch in eine verwendbare Telefonnummer umgewandelt werden 1-800-7764726( wie im vorherigen Beispiel). Ihr Programm empfängt eine beliebige Zeichenfolge mit Zahlen, Buchstaben und Bindestrichen und konvertiert alle Buchstaben in die entsprechenden Zahlen. Hier ist eine …
23 code-golf  number 

15
Topografische Zeichenfolgen
Hier sind einige Beispieleingaben, damit ich erklären kann, wo das Problem liegt: ((1 2)(3 (4 5) moo)) (i (lik(cherries)e (woohoo))) Stellen Sie sich diese Textzeile als topografische Karte einiger Berge vor. Jede Klammer gibt eine Höheneinheit an. Wenn wir dies von der Seite "sehen", so dass wir die Berge vertikal …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.