Vier ganzzahlige Folgen
In dieser Challenge testen Sie vier verschiedene Eigenschaften einer positiven Ganzzahl, die durch die folgenden Sequenzen gegeben sind. Eine positive ganze Zahl N ist
- Perfekt ( OEIS A000396 ), wenn die Summe der richtigen Teiler von N gleich N ist . Die Sequenz beginnt mit 6, 28, 496, 8128, 33550336, 8589869056, 137438691328, 2305843008139952128 ...
- refactorable ( OEIS A033950 ), wenn die Anzahl der Teiler von N ein Teiler von N . Die Sequenz beginnt mit 1, 2, 8, 9, 12, 18, 24, 36, 40, 56, 60, 72, 80, 84, 88, 96, 104, 108, 128 ...
- praktisch ( OEIS A005153 ), wenn jede ganze Zahl 1 ≤ K ≤ N eine Summe einiger verschiedener Teiler von N ist . Die Sequenz beginnt mit 1, 2, 4, 6, 8, 12, 16, 18, 20, 24, 28, 30, 32, 36, 40, 42, 48, 54, 56 ...
- stark zusammengesetzt ( OEIS A002128 ), wenn jede Zahl 1 ≤ K <N streng weniger Teiler als N hat . Die Sequenz beginnt mit 1, 2, 4, 6, 12, 24, 36, 48, 60, 120, 180, 240, 360, 720, 840, 1260, 1680, 2520, 5040 ...
Vier Programme
Ihre Aufgabe ist es, vier Programme zu schreiben (dh vollständige Programme, Funktionsdefinitionen oder anonyme Funktionen, die E / A nach einer der Standardmethoden ausführen ). Jedes Programm soll das Mitgliedschaftsproblem einer dieser Sequenzen lösen. Mit anderen Worten, jedes Programm nimmt eine positive ganze Zahl N ≥ 1 als Eingabe und gibt einen Wahrheitswert aus, wenn N in der Sequenz ist, und einen falschen Wert, wenn nicht. Sie können davon ausgehen, dass N innerhalb der Grenzen des ganzzahligen Standardtyps Ihrer Programmiersprache liegt.
Die Programme müssen folgendermaßen verknüpft sein. Es gibt vier ABCD
solche Saiten
AC
ist das Programm, das perfekte Zahlen erkennt.AD
ist das Programm, das refactorable Zahlen erkennt.BC
ist das Programm, das praktische Zahlen erkennt.BD
ist das Programm, das sehr zusammengesetzte Zahlen erkennt.
Wertung
Ihre Punktzahl ist die Gesamtlänge (in Byte) der Zeichenfolgen ABCD
, oder mit anderen Worten die Gesamtbytezahl der vier Programme geteilt durch zwei. Die niedrigste Punktzahl in jeder Programmiersprache ist der Gewinner. Es gelten die Standardregeln für Code-Golf .
Wenn die vier Saiten sind zum Beispiel a{
, b{n
, +n}
und =n}?
, dann die vier Programme sind a{+n}
, a{=n}?
, b{n+n}
und b{n=n}?
, und das Ergebnis ist 2 + 3 + 3 + 4 = 12.