구글코드잼 2012 Qualification Round A번 문제를 Scheme으로 풀어봤습니다.
http://code.google.com/codejam/contest/1460488/dashboard#s=p0
(define mapping
(hash #\a #\y #\b #\h #\c #\e #\d #\s #\e #\o
#\f #\c #\g #\v #\h #\x #\i #\d #\j #\u
#\k #\i #\l #\g #\m #\l #\n #\b #\o #\k
#\p #\r #\q #\z #\r #\t #\s #\n #\t #\w
#\u #\j #\v #\p #\w #\f #\x #\m #\y #\a
#\z #\q))
(define (translate c) (hash-ref mapping c c))
(define (solve text) (list->string (map translate (string->list text))))
(define (output case-number)
(string-append "Case #"
(number->string case-number)
": "
(solve (read-line))
"\n"))
(define T (string->number (read-line)))
(define case-number-list (build-list T add1))
(for-each display (map output case-number-list))
;(require rackunit)
;(require rackunit/text-ui)
;
;(define speaking-in-tongues-tests
; (test-suite "Test for speaking-in-tongues"
; (check-equal? (solve "ejp mysljylc kd kxveddknmc re jsicpdrysi")
; "our language is impossible to understand")))
;(exit (run-tests speaking-in-tongues-tests))