Skip to content

Instantly share code, notes, and snippets.

View kazh98's full-sized avatar
๐Ÿ˜€
Set your status

Kazuhiro HISHINUMA kazh98

๐Ÿ˜€
Set your status
View GitHub Profile
main(){for(;;)puts("a");}
(use srfi-1)
(use srfi-13)
(use text.tree)
(define *width* 83)
(define (gidx lis)
(let lp ((lis lis) (idx 0) (res '()))
(if (null? lis)
(reverse res)
@kazh98
kazh98 / Problem0059.scm
Created September 19, 2012 02:24
Project Euler #59
;;; in Scheme/Gauche
(use srfi-1)
(use util.combinations)
(define *filename* "./cipher1.txt")
(define *data*
(call-with-input-file *filename*
(compose
read-from-string
@kazh98
kazh98 / Problem0058.scm
Created September 18, 2012 14:36
Project Euler #58
;;; in Scheme/Gauche
(add-load-path ".")
(use srfi-1)
(use scythe)
(define prime?
(prime-predicator 688590082))
(define (corners l)
(map (compose (pa$ - (* l l)) (pa$ * (- l 1))) (iota 4)))
@kazh98
kazh98 / Problem0057.scm
Created September 17, 2012 13:00
Project Euler #57
;;; in Scheme/Gauche
(use srfi-1)
(format #t "~D~%"
(count
(lambda (e) (> (string-length (number->string (numerator e)))
(string-length (number->string (denominator e)))))
(let recur ((res '()) (n 1000) (d 3/2))
(if (zero? n)
(reverse res)
@kazh98
kazh98 / Problem0056.scm
Created September 16, 2012 06:05
Project Euler #56
;;; in Scheme/Gauche
(use srfi-1)
(use srfi-42)
(format #t "~D~%"
(apply max
(map
(compose
(apply$ +)
(map$ digit->integer)
@kazh98
kazh98 / Problem0055.scm
Created September 15, 2012 16:20
Project Euler #55
;;; in Scheme/Gauche
(use srfi-13)
(use srfi-1)
(format #t "~D~%"
(count
(let ((rev (compose string->number string-reverse number->string)))
(rec (co e :optional (l 50))
(if (zero? l) #t
(let ((d (+ e (rev e))))
@kazh98
kazh98 / Problem0053.scm
Created September 13, 2012 05:57
Project Euler #53
;;; in Scheme/Gauche
(use srfi-1)
(use srfi-42)
(define (permutation n r)
(let recur ((res 1) (n n) (r r))
(if (zero? r) res
(recur (* res n) (- n 1) (- r 1)))))
(define (factorial n)
@kazh98
kazh98 / Problem0052.scm
Created September 12, 2012 00:24
Project Euler #52
;;; in Scheme/Gauche
(use srfi-1)
(define n->l (compose (cut sort <> char<?) string->list number->string))
(format #t "~D~%"
(let recur ((n 1))
(let ((orig (n->l n)))
(or (and (every
(lambda (e) (equal? orig (n->l (* n e))))
@kazh98
kazh98 / Problem0050.scm
Created September 10, 2012 05:59
Project Euler #50
;;; in Scheme/Gauche
(add-load-path ".")
(use srfi-1)
(use scythe)
(define limit 1000000)
(format #t "~D~%"
(receive (primes prime?) (primes limit)
(define (solver lis)