1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | (define square (lambda (x) (* x x))) (define exp (lambda (a b) (cond ((= 0 b) 1) ((even? b) (square (exp a (/ b 2)))) (else (* a (exp a (- b 1))))))) (define fib (lambda (n) (let ((fibn (floor (/ (exp (inexact->exact (/ (+ 1 (sqrt 5)) 2)) n) (inexact->exact (sqrt 5)))))) (if (= 1 (modulo n 2)) (+ 1 fibn) fibn)))) (define nbdigits (lambda (a acc) (if (= 0 a) acc (nbdigits (quotient a 10) (+ 1 acc))))) (define atleast1000digits (lambda (n) (if (< (nbdigits (fib n) 0) 1000) (atleast1000digits (+ n 1)) n))) (define find1000digits (lambda (a b) (let* ((m (quotient (+ a b) 2)) (d (nbdigits (fib m) 0))) (if (= d 1000) (if (= (nbdigits (fib (- m 1)) 0) 1000) (find1000digits a m) m) (if (< d 1000) (find1000digits m b) (find1000digits a m)))))) (write (find1000digits 1 10000)) |
KGRlZmluZSBzcXVhcmUKKGxhbWJkYSAoeCkKKCogeCB4KSkpCiAKKGRlZmluZSBleHAKKGxhbWJkYSAoYSBiKQooY29uZCAoKD0gMCBiKSAxKQooKGV2ZW4/IGIpIChzcXVhcmUgKGV4cCBhICgvIGIgMikpKSkKKGVsc2UgKCogYSAoZXhwIGEgKC0gYiAxKSkpKSkpKQogCihkZWZpbmUgZmliCihsYW1iZGEgKG4pCihsZXQgKChmaWJuIChmbG9vciAoLyAoZXhwIChpbmV4YWN0LT5leGFjdCAoLyAoKyAxIChzcXJ0IDUpKSAyKSkgbikgKGluZXhhY3QtPmV4YWN0IChzcXJ0IDUpKSkpKSkKKGlmICg9IDEgKG1vZHVsbyBuIDIpKSAoKyAxIGZpYm4pIGZpYm4pKSkpCiAKKGRlZmluZSBuYmRpZ2l0cwoobGFtYmRhIChhIGFjYykKKGlmICg9IDAgYSkgYWNjIChuYmRpZ2l0cyAocXVvdGllbnQgYSAxMCkgKCsgMSBhY2MpKSkpKQogCiAKKGRlZmluZSBhdGxlYXN0MTAwMGRpZ2l0cwoobGFtYmRhIChuKQooaWYgKDwgKG5iZGlnaXRzIChmaWIgbikgMCkgMTAwMCkgKGF0bGVhc3QxMDAwZGlnaXRzICgrIG4gMSkpIG4pKSkKIAooZGVmaW5lIGZpbmQxMDAwZGlnaXRzCihsYW1iZGEgKGEgYikKKGxldCogKChtIChxdW90aWVudCAoKyBhIGIpIDIpKQogICAgICAoZCAobmJkaWdpdHMgKGZpYiBtKSAwKSkpCihpZiAoPSBkIDEwMDApIChpZiAoPSAobmJkaWdpdHMgKGZpYiAoLSBtIDEpKSAwKSAxMDAwKSAoZmluZDEwMDBkaWdpdHMgYSBtKSAgbSkKICAgICAgICAgICAgICAgKGlmICg8IGQgMTAwMCkgKGZpbmQxMDAwZGlnaXRzIG0gYikgKGZpbmQxMDAwZGlnaXRzIGEgbSkpKSkpKQoKKHdyaXRlIChmaW5kMTAwMGRpZ2l0cyAxIDEwMDAwKSk=
-
upload with new input
-
result: Success time: 0.17s memory: 8760 kB returned value: 0
4782



