深夜のF#
F#の勉強がてらプロコンの問題を解けるようなサイトはないかなと探していたら
http://d.hatena.ne.jp/tomerun/20101219/1292766620
こちらでSphere online judgeが紹介されていました、なんとbrainf*ckとかも対応しているらしい。
(あとでadvent calendarに載ってる他のブログも見てみようかな)
というわけで、初投稿してみました。
頑張って再帰は使ってみたけど、結局最後はfor文になってしまった。
あと入出力ムズ過ぎてコピペしました。
http://www.spoj.com/ranks/TEST/lang=FS,start=20
で無事通過。
コンパイルするときにはtabはspaceに変換するか
indent "off"とか加えないといけないみたいでコンパイルエラーしてた。
まぁこれから頑張ります、本もAmazonさんでカートにまでは入れました(笑)
あとはこちらhttp://bleis-tift.hatenablog.com/entry/20120119/1326944722あたりを参考に、基本的な関数の組み立て方を勉強中。
http://d.hatena.ne.jp/tomerun/20101219/1292766620
こちらでSphere online judgeが紹介されていました、なんとbrainf*ckとかも対応しているらしい。
(あとでadvent calendarに載ってる他のブログも見てみようかな)
というわけで、初投稿してみました。
頑張って再帰は使ってみたけど、結局最後はfor文になってしまった。
あと入出力ムズ過ぎてコピペしました。
http://www.spoj.com/ranks/TEST/lang=FS,start=20
で無事通過。
コンパイルするときにはtabはspaceに変換するか
indent "off"とか加えないといけないみたいでコンパイルエラーしてた。
まぁこれから頑張ります、本もAmazonさんでカートにまでは入れました(笑)
あとはこちらhttp://bleis-tift.hatenablog.com/entry/20120119/1326944722あたりを参考に、基本的な関数の組み立て方を勉強中。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
let lines = | |
Seq.initInfinite (fun _ -> System.Console.In.ReadLine()) | |
|> Seq.takeWhile(fun line -> line <> null) | |
|> Seq.toList;; | |
let rec filtered lines = | |
match lines with | |
| [] -> [] | |
| x::res -> | |
if System.String.Equals(x, "42", System.StringComparison.CurrentCultureIgnoreCase) then [] | |
else x :: (filtered res);; | |
let nlines = filtered lines;; | |
for line in nlines do printfn "%s" line;; |
コメント
コメントを投稿