Die Suche ergab 711 Treffer

von narpfel
Dienstag 17. März 2026, 20:43
Forum: Allgemeine Fragen
Thema: Collatz-Vermutung
Antworten: 27
Zugriffe: 5693

Re: Collatz-Vermutung

Code: Alles auswählen

f=lambda n:n-1and[n]+f((n//2,3*n+1)[n%2])or[1]
von narpfel
Sonntag 15. März 2026, 17:14
Forum: Allgemeine Fragen
Thema: Collatz-Vermutung
Antworten: 27
Zugriffe: 5693

Re: Collatz-Vermutung

Das meinte ich.

Mit ein bisschen rumprobieren bin ich jetzt bei 46 Bytes.
von narpfel
Sonntag 15. März 2026, 16:52
Forum: Allgemeine Fragen
Thema: Collatz-Vermutung
Antworten: 27
Zugriffe: 5693

Re: Collatz-Vermutung

@__blackjack__: Da ist noch ein relativ offensichtliches einzelnes Byte, das man sparen kann. :mrgreen:
von narpfel
Mittwoch 18. Februar 2026, 21:46
Forum: Allgemeine Fragen
Thema: Collatz-Vermutung
Antworten: 27
Zugriffe: 5693

Re: Collatz-Vermutung

@__blackjack__: Die `while`-Schleife ist mir immer noch ein bisschen zu lang; so wird’s besser:

Code: Alles auswählen

Λ=lambda n:3*n+1
V=lambda n:n//2
def collatz(n):
 l=[n]
 while n!=1:l+=[n:=[V,Λ][n%2](n)]
 return l
von narpfel
Montag 8. Dezember 2025, 18:01
Forum: Links und Tutorials
Thema: Advent of Code
Antworten: 506
Zugriffe: 319245

Re: Advent of Code

Meine Lösung für Tag 6 sieht fast aus wie BASIC (193 Zeichen):

Code: Alles auswählen

from itertools import*;*a,o=open(0);s=str.split;b=map("".join,zip(*a));o=[o.join for o in s(o)]
print(sum(eval(o(a))for o,*a in zip(o,*map(s,a))),sum(eval(o(takewhile(str.strip,b)))for o in o))
von narpfel
Donnerstag 4. Dezember 2025, 22:21
Forum: Links und Tutorials
Thema: Advent of Code
Antworten: 506
Zugriffe: 319245

Re: Advent of Code

@snafu: Ist `div_floor` nicht das gleiche wie `div_euclid` für nichtnegative `rhs`?
von narpfel
Dienstag 2. Dezember 2025, 21:07
Forum: Links und Tutorials
Thema: Advent of Code
Antworten: 506
Zugriffe: 319245

Re: Advent of Code

Heute gingen beide Teile sehr schön als Basheinzeiler. :mrgreen:
von narpfel
Montag 1. Dezember 2025, 18:51
Forum: Links und Tutorials
Thema: Advent of Code
Antworten: 506
Zugriffe: 319245

Re: Advent of Code

Teil 1 in ging in Bash noch relativ einfach als Einzeiler:

n=50; < input tr LR -+ | while read line; do ((n = (n $line + 100) % 100)); echo $n; done | grep -c '^0$'


Oder gegolft sogar unter 80 Zeichen:

n=50;tr LR -+<i|while read l;do((n=(n$l+100)%100));echo $n;done|grep -c '^0$'


Aber für ...
von narpfel
Mittwoch 1. Oktober 2025, 19:36
Forum: Offtopic
Thema: [Rust]Summe eines Vec mit Wahrheitswerten
Antworten: 63
Zugriffe: 23340

Re: [Rust]Summe eines Vec mit Wahrheitswerten


weil der Name `_` ja plötzlich an `Itertools` gebunden wurde, durch das umbenennen.


`_` ist kein normaler Identifier: Wenn es in einer `use`-Deklaration als Target benutzt wird, ist das importierte Item danach unter keinem Namen erreichbar. Wenn man `let _ = ...` schreibt, wird der Wert nicht ...
von narpfel
Dienstag 30. September 2025, 20:00
Forum: Offtopic
Thema: [Rust]Summe eines Vec mit Wahrheitswerten
Antworten: 63
Zugriffe: 23340

Re: [Rust]Summe eines Vec mit Wahrheitswerten


nur durch den festgelegten Typ `Operations` kann ich nicht einfach eine 3. Funktion verwenden. Da muss ich noch schauen, ob und wie ich das mache.

Zwei Möglichkeiten: Du übergibst nicht ein Array mit konstanter Länge, sondern einen Wert mit einem Typ, dessen Länge dynamisch festgelegt werden ...
von narpfel
Montag 29. September 2025, 17:20
Forum: Offtopic
Thema: [Rust]Summe eines Vec mit Wahrheitswerten
Antworten: 63
Zugriffe: 23340

Re: [Rust]Summe eines Vec mit Wahrheitswerten


und zum anderen hat das im Vergleich zu `itertools.product` für Python, kein `repeat`-Argument.


Ah, du musst die Länge vom Ergebnis dynamisch festlegen. Dafür gibt es `multi_cartesian_product` .

Spoiler: So würde ich deinen Code mit minimalen Änderungen kompilierbar machen https://godbolt.org ...
von narpfel
Sonntag 28. September 2025, 20:23
Forum: Offtopic
Thema: [Rust]Summe eines Vec mit Wahrheitswerten
Antworten: 63
Zugriffe: 23340

Re: [Rust]Summe eines Vec mit Wahrheitswerten

https://adventofcode.com/2024/about hat geschrieben: Nor do you need a fancy computer; every problem has a solution that completes in at most 15 seconds on ten-year-old hardware.
Da kann man noch ein bisschen was rausholen. Zum Beispiel hiermit.
von narpfel
Samstag 27. September 2025, 13:26
Forum: Offtopic
Thema: [Rust]Summe eines Vec mit Wahrheitswerten
Antworten: 63
Zugriffe: 23340

Re: [Rust]Summe eines Vec mit Wahrheitswerten

Dennis89 hat geschrieben: Samstag 27. September 2025, 13:07 und dazu gab es keine Fehlermeldung.
Doch, du bekommst eine Fehlermeldung. Du ignorierst sie nur explizit.
von narpfel
Dienstag 23. September 2025, 18:06
Forum: Offtopic
Thema: [Rust]Summe eines Vec mit Wahrheitswerten
Antworten: 63
Zugriffe: 23340

Re: [Rust]Summe eines Vec mit Wahrheitswerten


Im Vergleich dazu bekomme ich mit `split` "nur" ein `&str`.


Fast. Du bekommst einen Iterator , der dir `&str` liefert. Also beliebig viele `&str`.

`try_collect` macht aus einem `Iterator<Item = Result<T, E>>` ein `Result<Vec<T>, E>`. Das gleiche geht auch immer mit `collect`, aber da muss man ...
von narpfel
Montag 22. September 2025, 21:11
Forum: Offtopic
Thema: [Rust]Summe eines Vec mit Wahrheitswerten
Antworten: 63
Zugriffe: 23340

Re: [Rust]Summe eines Vec mit Wahrheitswerten


Ich kann von mir erfahrungsgemäß sagen, dass ich mich da "immer" in die falsche Richtung verrenne und bitte euch daher wieder um Hilfe.


Du versuchst, zu viel auf einmal zu machen. Da sind mehr Fehler als nur der bei `split`; das sagt mir, dass du zu viel Code geschrieben hast, bevor du das ...
von narpfel
Mittwoch 10. September 2025, 19:18
Forum: Offtopic
Thema: [Rust]Summe eines Vec mit Wahrheitswerten
Antworten: 63
Zugriffe: 23340

Re: [Rust]Summe eines Vec mit Wahrheitswerten

@snafu: Nicht wirklich. In Rust kommt halt noch Pattern Matching dazu, und place und value expressions heißen in C lvalues und rvalues. Ansonsten ist da nicht so wirklich ein großer Unterschied.
von narpfel
Mittwoch 10. September 2025, 18:20
Forum: Offtopic
Thema: [Rust]Summe eines Vec mit Wahrheitswerten
Antworten: 63
Zugriffe: 23340

Re: [Rust]Summe eines Vec mit Wahrheitswerten


Eventuell so vergleichbar, `x` ist ein Mensch und bildet sich eine Meinung und `y` ist sehr faul und sagt einfach er hat die gleiche Meinung wie `x`.

Mmh, naja. Was Vergleiche angeht, hinkt der schon ziemlich. Ich hab aber leider auch nicht so richtig eine schöne Analogie, mit der ich Referenzen ...
von narpfel
Samstag 6. September 2025, 14:12
Forum: Offtopic
Thema: [Rust]Summe eines Vec mit Wahrheitswerten
Antworten: 63
Zugriffe: 23340

Re: [Rust]Summe eines Vec mit Wahrheitswerten


Wann verwendet man `iter()` und wann `into_iter()`?


`into_iter` nimmt Ownership von dem Ding, über das Iteriert werden soll; `iter` borrowt den Wert. Sieht man an der an der Signatur von den Funktionen: https://doc.rust-lang.org/nightly/std/vec/struct.Vec.html#method.into_iter und https://doc ...
von narpfel
Freitag 5. September 2025, 19:42
Forum: Offtopic
Thema: [Rust]Summe eines Vec mit Wahrheitswerten
Antworten: 63
Zugriffe: 23340

Re: [Rust]Summe eines Vec mit Wahrheitswerten

@__blackjack__: Die Beschreibung vermischt IMHO zu sehr die Repräsentation mit der abstrakten Definition. Die Referenz definiert die Operationen auf `bool` mit Wahrheitstabellen und nicht mit Operationen auf der Repräsentation: https://doc.rust-lang.org/stable/reference/types/boolean.html#r-type ...
von narpfel
Freitag 5. September 2025, 17:33
Forum: Offtopic
Thema: [Rust]Summe eines Vec mit Wahrheitswerten
Antworten: 63
Zugriffe: 23340

Re: [Rust]Summe eines Vec mit Wahrheitswerten


Rust hat Bitoperatoren für Wahrheitswerte so implementiert, das sie die als 1-Bit-Wert betrachten und das Byte das zum Speichern verwendet wird nur die Werte 0 und 1 annehmen kann. Ein ~x ist dann also in der Umsetzung eigentlich ein `((x as u8) ^ 1) as bool` (keine Ahnung ob die Syntax so ...