a

17 Apr 2012

구글코드잼 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))
Based on Bootstrap. Icons from Font Awesome. Web fonts from Google. Generated by Jekyll.