[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
【初稿】132バイト久々の接待ゴルフ(にもならんが)世界と2倍差にはならなかった。main=mapM putStrLn$map unwords$take 34$map(map show)$iterate(f 0)[1]f a b|length b==a=[1]|a==0=1:f(a+1)b|1>0=b!!(a-1)+b!!a:f(a+1)b【修正1】127バイトmain=mapM putStrLn$map(unwords.(map show))$take 34$iterate(0#)[1]a#b|length b==a=[1]|a==0=1:(a+1)#b|1>0=b!!(a-1)+b!!a:(a+1)#bちんたら、条件判定してるのがいかんのかなあ【修正2】121バイトmain=mapM putStrLn$map(unwords.(map show))$take 34$iterate(0#)[1]0#b=1:1#ba#b|length b==a=[1]|1>0=b!!(a-1)+b!!a:(a+1)#b【修正3】111バイトmain=mapM putStrLn$map(unwords.(map show))$take 34$iterate f[1]f b=1:g(b++[0])g[0]=[]g x=x!!0+x!!1:g(tail x)方針をがらっと変えて短くなった。【修正3】106バイトmain=mapM putStrLn$map(unwords.(map show))$take 34$iterate f[1]f a=1:g ag[a]=[a]g x=x!!0+x!!1:g(tail x)【修正4】105バイトmain=mapM putStrLn$map(unwords.(map show))$take 34$iterate(\a->1:g a)[1]g[a]=[a]g x=x!!0+x!!1:g(tail x)【修正5】90バイトmain=mapM putStrLn$map(unwords.(map show))$take 34$iterate(\x->zipWith(+)(x++[0])(0:x))[1]ネットを漁っていたら、パスカルの三角形は、0, 11, 0を合わせると、1, 1 になるし、0, 1, 11, 1, 0を合わせると、1, 2, 1 になることが分かった。なので、zipWith を使って書き直したら、90 まで縮んだ。【修正6】88バイトmain=mapM putStrLn$map(unwords.map show)$take 34$iterate(\x->zipWith(+)(x++[0])(0:x))[1]map show を囲った括弧は消せたよ。。。【修正7】87バイト main=mapM putStrLn$map(unwords.map show)$take 34$pp=[1]:[zipWith(+)(x++[0])(0:x)|x<-p]接待ゴルフまで あと2バイト!!【修正8】86バイト main=mapM putStrLn$map(unwords.map show)$take 34pp=[1]:[zipWith(+)(x++[0])(0:x)|x<-p]接待ゴルフまで あと1バイト!! take と p は ドルマークで結ばなくて良かった(はあと)【修正8】85バイト main=mapM putStrLn$map(unwords.map show)$take 34pp=[1]:[zipWith(+)(x++[0])$0:x|x<-p]接待ゴルフ開始 か?【修正9】81バイト main=mapM(putStrLn.unwords.map show)$take 34pp=[1]:[zipWith(+)(0:x)$x++[0]|x<-p]いやはや、mapM と map でも合成関数ができたとは。。。まったく 知らなかった。。。
【初稿】 119 バイト 自分なりに工夫したつもりだったが、結構長い。。。 import Char main=do l<-getLine;interact$unlines.filter(/=[]).map(l%).lines f l=sum$map((2^).ord)l l%a|f l==f a=a|1>0=[]
【初稿】動作は正しいと思うが、タイムアウトになってしまった。。。(涙)while read ado n=1 while [ "$a" != "$l" ] do l= c=${a:0:$n} d=$((`expr length $a`/$n)) for i in `seq 1 $d` do l=$l$c done n=$(($n+1)) done echo $cdone
【初稿】久しぶりに python でゴルフした。while 1: a=raw_input() b=1 while a[:b]*(len(a)/b)!=a:b=b+1 print a[:b]
【初稿】 import Text.Printf main=f[2,1,11] f[n,a,b]=printf "%9d * 9 +%3d = %d\n"a n b>>f[[1..10]!!n,a+b,(a+b)*9+n+1]
【修正1】 import Text.Printf main=f[2,1] f[n,a]=printf"%9d * 9 +%3d = %d\n"a n(a*9+n)>>f[[1..10]!!n,a*10+n]
【修正2】 import Text.Printf main=2#1 n#a=printf"%9d * 9 +%3d = %d\n"a n(a*9+n)>>[1..10]!!n#(a*10+n)