examples:project_euler_-_problem_p172
Project Euler - Problem 172
Wie viele 18-stellige Zahlen (ohne führende Nullen) n gibt es, so dass keine Stelle mehr als drei Mal in n auftritt?
Antwort: Finde es selbst heraus mit Forth
Eine Lösung mit gforth:
#! /usr/bin/gforth : d* ( d d -- d ) 3 pick * >r tuck * >r um* r> + r> + ; : p172 { W: n W: r -- D: ret } n 3 = if r r r * * s>d exit then n 2 = if r r * s>d exit then n 1 = if r s>d exit then n 1- r 1- recurse \ -- d2 n 2 - r 1- recurse n 1- s>d d* d+ \ d2 -- d3 n 1- dup 1- 2 */ s>d n 3 - r 1- recurse d* d+ \ d3 -- d4 r 10 = if 9. else r s>d then d* \ d4 -- ret ; 18 10 p172 ." The answer is " d. cr bye
examples/project_euler_-_problem_p172.txt · Zuletzt geändert: 2013-06-06 21:26 von 127.0.0.1