Ankündigung

Einklappen
Keine Ankündigung bisher.

phpgolf :)

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • #31
    uff das is ja grausam
    hab jetzt mal ne stunde gebaselt..
    Ist sogar ne einigermaßen generische lösung (wenn es zählt dass man den string der rauskommen soll vorher durch ne andre php datei jagen darf und den output davon dann als ausgangsparameter verwenden darf)

    Aber selbst komprimiert soweit mir möglich, komm ich nicht auf unter 283 bytes, weil blöderweise mein input-string der dann verwendet wird zum zusammenbauen schon 135 bytes verwendet...


    edit:
    ok so wird das nix
    leider keine zeit mehr für was anderes...
    aber mal ne idee:
    "## # ####"
    -> 3-2-1-1-4
    die quersumme daraus ist 11
    multipliziert -> 24
    wenn man das im format '5|11|24' als input verwendet, und dann einfach mal n paar schleifen solange drüberlaufen lässt, bis es die passenden ausgangszahlen gefunden hat... ob das noch ne eindeutige lösung gibt? (von laufzeitbegrenzung hab ich nix gelesen )

    edit: mag mal jemand seine lösung hier posten? würd mich interessieren der ansatz...

    Kommentar


    • #32
      Zitat von fireweasel
      Hüh? Die Beispiele hab ich alle schon hochgeladen. Soweit ich das verstanden habe, wird die gleiche Lösung nicht zweimal akzeptiert, also besteht keine Gefahr, dass dies irgendjemand ausnutzen könnte. Es sei denn, ich hätte irgendwo ein Leerzeichen übersehen ...
      Hm, sicher? Ich gehe davon aus, dass mehrere Leute dieselbe Lösung abgeben können. Auf der Seite konnte ich bislang jedenfalls keine gegenteiligen Angaben finden.

      Zitat von Screeze
      mag mal jemand seine lösung hier posten? würd mich interessieren der ansatz...
      Das würde die Ansätze halt dummerweise auffindbar machen. Ich meine klar, im Endeffekt muss natürlich jeder selbst entscheiden, ob er die "Lösungen" sucht oder nicht, denn früher oder später wird dazu ohnehin was im Internet auftauchen.

      *schulterzuck*

      Kommentar


      • #33
        was zum...

        Hab meine Version mal testeshalber eingeschickt, auch wenn ich wusste, damit nicht auf den vorderen Plätzen zu landen. Resultat: failed oO

        Grund, ich habe Leerzeilen am Zeilenende, die "Musterlösung" nicht.

        Naja, da die Lösung also eh vom Grund auf falsch ist, hier mal mein Versuch
        PHP-Code:
        <?$_='~~HHHHHNE??~~GGGGG~~??~~HHHHHNE??]~````hhhzQ??]~``````~]??~~______??~~HHHHHH';for($i=0;$i<7;++$i){for($k=0;$k<76;++$k)echo ord($_{$k})-0x3F&1<<($i>4?$i-1:$i)?'#':' ';echo"\n";}?>
        Die Funktionsweise dürft ihr selber rausfinden

        Kommentar


        • #34
          Genialer Ansatz. Ich habe eine Weile überlegen müssen, bis ich verstanden habe, dass du LeerZEICHEN meinst.. bau den String doch in der inneren Schleife zusammen und gib ihn dann mit rtrim aus.
          @fschmengler - @fschmengler - @schmengler
          PHP Blog - Magento Entwicklung - CSS Ribbon Generator

          Kommentar


          • #35
            Dann schreibste noch das "\n" nach vorn, lässt die {} weg und die 0-Initialisierungen der Schleifenzähler. Und das $k-Inkrement kannst Du auch bei der ersten Verwendung machen.
            --

            „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
            Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


            --

            Kommentar


            • #36
              wie gesagt: war meine erste Version, die, auch wenn ich sie kürzer mach, allein vom Aufbau her nicht funktionieren kann.
              Ich bau die Ausgabe Spaltenweise auf (jedes Zeichen ist eine Spalte), kann daher nicht ohne weiteres Leerzei[b]ch[/]en am Zeilenende vermeiden.
              Aber danke, ich merks mir vor

              Kommentar


              • #37
                Doch doch, ich habe mir mal erlaubt, deine Lösung umzubauen, dass sie die Ausgabe zeilenweise mit rtrim() macht. Nach "Optimierung" der Schleife und ein paar anderen Tricks immer noch nur 185 Bytes. Habs grad nochmal mit 7 statt 6 Bit Information pro Zeichen versucht, damit wären es theoretisch nochmal weniger weil immer gleich geshiftet wird aber bin irgendwo am Zeichensatz gescheitert..
                @fschmengler - @fschmengler - @schmengler
                PHP Blog - Magento Entwicklung - CSS Ribbon Generator

                Kommentar


                • #38
                  Der Spitzenwert liegt dort mittlerweile bei 138 Byte. Das ist verrückt.

                  - http://www.phpgolf.org/challenge/phpGolf

                  Glaube, mein aktueller Ansatz speichert abwechselnd pro 4 Bit die Anzahl an Rauten beziehungsweise Leerzeichen und x00 ist ein Zeilenumbruch oder so. Ein Byte wüsste ich noch rauszuholen, aber bei dem Getrickse braucht es dummerweise schon Buildscripts, um den tatsächlichen Code zu generieren… (Edit: Na ja, logischerweise braucht es die.)

                  *bump*

                  Kommentar


                  • #39
                    133 Byte.

                    Hilfe, Rückfall.

                    - http://www.php.de/php-einsteiger/858...umwandlen.html

                    PHP-Code:
                    <?php // File encoding: WINDOWS-1252

                    error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED);

                    define('TEXT''x=1|y=2|z=4');



                    for(
                    $_=split(~¤Âƒ¢,TEXT);$t=$_[+$i++];$r[$t]=$_[$i++]);print_r($r);
                    UTF-8:

                    PHP-Code:
                    for($_=split('[=|]',TEXT);$t=$_[+$i++];$r[$t]=$_[$i++]);print_r($r); 

                    Kommentar


                    • #40
                      Hey, ich bin noch in den Top-20.

                      bump again, weil gerade per Suche gefunden

                      Kommentar


                      • #41
                        Bähh da kann man ja richtig Zeit mit tot machen. Fast zwei Stunde und trotzdem noch 1/3 Code zuviel.

                        Kommentar


                        • #42
                          Häh? Wie soll das gehen? Ich komm netmals ansatzweise in diese nähe?

                          Kommentar


                          • #43
                            Guck dir ein paar Beispiele der offenen Challenges an:

                            z.B. ROT-N:
                            PHP-Code:
                            <?for($s=STR;26>$x+=!$c=$s[$$x];)echo$c?$s[$$x++]=++$c:~õ;
                            Lerne Grundlagen | Schreibe gute Beispiele | PDO > mysqli > mysql | Versuch nicht, das Rad neu zu erfinden | Warum $foo[bar] böse ist | SQL Injections | Hashes sind keine Verschlüsselungen! | Dein E-Mail Regex ist falsch

                            Kommentar


                            • #44
                              PHP-Code:
                               <?=preg_filter(~У›Ô×ßÖÀК,~ÞÛž¤¢Â£ÏÔ’ž‡×Ûž¤Û–ÒÛ™¢ÓÛž¤ÒÛ–ÔÂÛ™ÂÞÞÝ£ÎÝ¢Ö,TRI).max($a);
                              Da kann ich ja lange probieren... Ich versteh den Code kein Stück

                              Kommentar


                              • #45
                                Ich auch nicht; das wird wohl ein UTF-8/Windows-1252-Hack sein.
                                Crashkurs zum Thema Rechtschreibung: normalerweise (normaler weise oder normaler weiße), Standard (Standart), eben (ebend)

                                Kommentar

                                Lädt...
                                X