Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Nächste Überarbeitung | Vorherige Überarbeitung | ||
treffen:codegolfing:001_gc [2017/12/02 17:36] max angelegt |
treffen:codegolfing:001_gc [2021/08/25 08:14] (aktuell) max |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ====== 001 CodeGolfing - Schlangenlinie ====== | + | {{: |
+ | |||
+ | [[https:// | ||
+ | |||
+ | ====== 001: Schlangenlinie ====== | ||
+ | |||
+ | | Serie | [[treffen: | ||
+ | | Von | [[user: | ||
+ | | Datum | 16.Dezember 2017 | | ||
+ | | Download | {{ : | ||
+ | | Schweirigkeit | {{: | ||
+ | |||
**Eingabe**: | **Eingabe**: | ||
< | < | ||
Zeile 17: | Zeile 29: | ||
< | < | ||
$python script.py 3 106 | $python script.py 3 106 | ||
- | 1---5---9------13------17 | + | 1---5---9-------13------17 |
- | -2-4-6-8-10–12---14--15-- | + | -2-4-6-8-10–-12---14--15-- |
- | --3---7----11------15---- | + | --3---7----11-------15---- |
</ | </ | ||
**Abgabe**: | **Abgabe**: | ||
- | Samstag 16.Dezember 2017 16:00 Uhr | + | Samstag 16.Dezember 2017 16:00 Uhr im Space |
+ | |||
+ | Dort schauen wir uns die unterschiedlichen Lösungen an. | ||
Bei Fragen: [email protected] | Bei Fragen: [email protected] | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | ==== Tests ==== | ||
+ | Die folgenden Testfälle wurden überprüft. | ||
+ | < | ||
+ | testcasesEchoString = [ | ||
+ | {" | ||
+ | {" | ||
+ | {" | ||
+ | {" | ||
+ | {" | ||
+ | {" | ||
+ | {" | ||
+ | ] | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | ==== Lösungen ==== | ||
+ | |||
+ | === 1. Platz === | ||
+ | Perl von Max mit 187 Bytes. Alle Tests bestanden. | ||
+ | < | ||
+ | $d=$ARGV[0]; | ||
+ | </ | ||
+ | |||
+ | In sauber: | ||
+ | < | ||
+ | $d=$ARGV[0]; | ||
+ | |||
+ | for (1..$d) { | ||
+ | $r=$_; | ||
+ | for (1..$l){ | ||
+ | $z=$d==1? | ||
+ | $z = $z> | ||
+ | if($z==$r){print$_; | ||
+ | else{print($" | ||
+ | } | ||
+ | print$/ | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | |||
+ | === 2. Platz === | ||
+ | JavaScript von Michael mit 225 Bytes. Hat Probleme mit d=1. Das führt zu einer mehrfachen Ausgabe von NaN. | ||
+ | < | ||
+ | for(x=process.argv, | ||
+ | </ | ||
+ | |||
+ | In sauber: | ||
+ | < | ||
+ | x = process.argv | ||
+ | d = x[2] | ||
+ | l = x[3] | ||
+ | r = new Array(d).fill(0) | ||
+ | p = 0 | ||
+ | i = 1 | ||
+ | for (j = 1; j <= l; j++) { | ||
+ | |||
+ | r[p] += j | ||
+ | |||
+ | for (k = 0; k < d; k++) { | ||
+ | if (k != p) { | ||
+ | r[k] = r[k] == null ? ' ' : r[k] + ' ' | ||
+ | } | ||
+ | } | ||
+ | p += i | ||
+ | |||
+ | if (p == d - 1) { | ||
+ | i = -1 | ||
+ | } | ||
+ | if (p == 0) { | ||
+ | i = 1 | ||
+ | } | ||
+ | } | ||
+ | for (i in r) { | ||
+ | console.log(r[i]) | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | === 3. Platz === | ||
+ | C von Robin mit 337 Bytes. Hat Probleme mit d=1. Das führt zu einer endlosen Ausgabe von einsen. Außerdem stimmen die Enden der Zeilen nicht bündig. | ||
+ | < | ||
+ | #include < | ||
+ | int main(int b,char *a[]){int h, | ||
+ | </ | ||
+ | |||
+ | In sauber: | ||
+ | < | ||
+ | #include < | ||
+ | //#inlcude < | ||
+ | |||
+ | int main(int b,char *a[]) { | ||
+ | int h, | ||
+ | | ||
+ | x=atoi(a[1]); | ||
+ | y=atoi(a[2]); | ||
+ | | ||
+ | h=1; | ||
+ | | ||
+ | for(i=1; | ||
+ | j=h; | ||
+ | u=0; | ||
+ | | ||
+ | while(j< | ||
+ | m=(x-1)*2; | ||
+ | n=(x-i)*2; | ||
+ | | ||
+ | n=u%2==0? | ||
+ | | ||
+ | n=n==0?m:n; | ||
+ | | ||
+ | v=j< | ||
+ | | ||
+ | k=j+n; | ||
+ | l=j; | ||
+ | | ||
+ | while(l< | ||
+ | p=l; | ||
+ | | ||
+ | while(p!=0) { | ||
+ | p/=10; | ||
+ | w++; | ||
+ | } | ||
+ | l++; | ||
+ | } | ||
+ | | ||
+ | if(v!=0) | ||
+ | printf(" | ||
+ | | ||
+ | printf(" | ||
+ | | ||
+ | j=k; | ||
+ | u++; | ||
+ | } | ||
+ | | ||
+ | printf(" | ||
+ | h++; | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | |||
+ |