original page : http://ja.doukaku.org/203/
与えられた自然数 n について、横向きで n 段のピラミッドを作ってください。 たとえば、 n に 4
が与えられた場合は以下のようなピラミッドを作ります。4
*
**
***
****
***
**
*与える自然数についてはリテラルで与える、標準入力で与える、引数で与えるなどは自由とします。
余力のあるものはこのプログラムを短くしてください。
※LL Future実行委員の高野光弘です。この出題は LL Future公式の出題であり、優れたものについてはLL Golfのセッションでご紹介させていただくかもしれません。ご理解の上、ご投稿ください。また、チケットは現在も発売中のほか、当日券もございます。よろしければ、メインイベントの方にもぜひご参加ください。
n=gets.to_i*2;n.times{|i|puts"*"*(i<n/2 ?i:n-i)}
#7431
original page : http://ja.doukaku.org/comment/7431/
正攻法で文字列処理をすると長くなってしまうので、
少し変則的に文字列処理をしない方向で書いてみました。
n <- 4+1 l=rep("*",n^2);l[cumsum(n-abs(-n:n))]="\n";cat(l)