Als Programmierer kennen wir alle das Sprichwort: "Sie können es schnell und gut haben, aber es wird nicht billig sein, Sie können es billig und gut haben, aber es wird nicht schnell sein, oder Sie können es schnell und billig haben , aber es wird nicht gut sein. "
Für diese Herausforderung implementieren Sie ein imaginäres Konfigurationstool für Ihre benutzerdefinierten Programmierdienste. Sie sollten drei Kontrollkästchen mit der Überschrift "SELECT ANY TWO" rendern:
SELECT ANY TWO
☐ FAST
☐ CHEAP
☐ GOOD
Sobald zwei Elemente ausgewählt wurden, muss das dritte Element deaktiviert werden. Wenn Sie eines der beiden ausgewählten Elemente abwählen, müssen alle Optionen erneut aktiviert werden. Anders ausgedrückt, wenn null oder ein Element ausgewählt ist, sind alle weiterhin aktiviert. Wenn jedoch zwei Elemente ausgewählt sind, muss das dritte deaktiviert werden.
Keine speziellen Kontrollen erlaubt. Die Kontrollkästchen sollten das Standardkontrollkästchen in der Sprache Ihrer Wahl sein. Verwenden Sie beispielsweise kein "CheckBoxList" -Steuerelement, wenn Ihre Sprache eines hat. Ich stelle mir vor, dass die meisten Einträge HTML / jQuery sein werden, aber das ist keine Regel. Dies ist Code Golf, der nach dem kürzesten Eintrag sucht.
GEWINNER BISHER
Ich werde es in Kategorien aufteilen. Es gibt einige klare Gewinner:
jQuery: nderscore, Mr. Tenacity Under 100b, wenn Sie Text "Ressourcen" ausschließen. Lobende Erwähnung sollte auch Matt für die Einführung der jQuery-Konzepte zuteil werden, von denen sich viele inspirieren ließen.
Dyalog APL: Marinus , auch bekannt als Mr. Unicode Wie schreibt man all diese Dinge? Ich kann verstehen, warum Sie kurze Programme schreiben möchten.
PHP: SuperScript Ich glaube, dies ist der kürzeste Eintrag, der die dritte Option deaktiviert, anstatt sie abzuwählen. Dabei wird die strengste Interpretation der Regeln befolgt.