about summary refs log tree commit diff
path: root/11/Q-2017/cau4.scm
diff options
context:
space:
mode:
authorRaphael McSinyx <vn.mcsinyx@gmail.com>2017-03-05 16:36:48 +0700
committerRaphael McSinyx <vn.mcsinyx@gmail.com>2017-03-05 16:36:48 +0700
commit2468c60b00b200b24a383ecc0fdc5d3cf8721b9f (patch)
tree09caf49c3af912b8e9c3532b5854e4b2a7ab12f9 /11/Q-2017/cau4.scm
parentb76eee8ea94df8048f2a7ae901856a480a43e8aa (diff)
downloadcp-2468c60b00b200b24a383ecc0fdc5d3cf8721b9f.tar.gz
Add 11/Q-2017
Diffstat (limited to '11/Q-2017/cau4.scm')
-rw-r--r--11/Q-2017/cau4.scm11
1 files changed, 11 insertions, 0 deletions
diff --git a/11/Q-2017/cau4.scm b/11/Q-2017/cau4.scm
new file mode 100644
index 0000000..b9438f5
--- /dev/null
+++ b/11/Q-2017/cau4.scm
@@ -0,0 +1,11 @@
+(with-input-from-file "CAU4.INP" (lambda ()
+  (with-output-to-file "CAU4.OUT" (lambda ()
+    (define x (list->string (let read-string ((c (read-char)))
+      (if (or (eof-object? c) (char-ci=? c #\newline))
+          '()
+          (cons c (read-string (read-char)))))))
+    (let find-palin ((i 0))
+      (if ((lambda (s) (string-ci=? (string-reverse s) s))
+           (string-copy x i (string-length x)))
+          (format #t "~a\n~a~a\n" i x (string-reverse (string-copy x 0 i)))
+          (find-palin (+ i 1))))))))