PamGau
Web周り、サッカーの話、ときどきヌコ

RubyでProject Euler - Problem 11

Problem 11 (Project Euler) [和訳])

In the 20×20 grid below, four numbers along a diagonal line have been marked in red.

(中略)

The product of these numbers is 26 × 63 × 78 × 14 = 1788696.

What is the greatest product of four adjacent numbers in any direction (up, down, left, right, or diagonally) in the 20×20 grid?

一要素ずつスキャンしていき、縦・横・右下・左下の要素を拾っていくコードを書きました。この際、範囲外の要素にアクセスする場合を考慮したif文を書くのは面倒なので、提示された行列の右辺と下辺に三要素分の番兵(値は0)を立てました。

上辺にこのような番兵を配置しないのは当然のこととして、マイナスの添え字が有効なRubyでは左辺にも番兵を立てる必要はありません。


"RubyでProject Euler - Problem 10" « Home » "RubyでProject Euler - Problem 12"

TrackBack

ご注意
当分の間、トラックバックの受信を行わないことといたしました。過去に戴いたトラックバックのリストについてはそのまま保持いたします。
トラックバックはありません

Comments

コメントはありません。
ご注意
当分の間、JavaScript が有効でないとコメント投稿できないようにします。スパム対策であって、投稿される方の個人情報を取得する目的ではありません。悪しからずご了承ください。
Recent Entries
京都御苑の「自転車道」
Googleの左サイドバーを消すユーザスタイルシート for Firefox , Opera
"Ruby Way"章頭の言葉
"The worst feelings in life"より
裸の英会話
RubyでProject Euler - Problem 59
RubyでProject Euler - Problem 58
RubyでProject Euler - Problem 57
RubyでProject Euler - Problem 55, 56
RubyでProject Euler - Problem 54
Links
PamGau 系
PamGau::Memo
PamGau::Dust
PamgauSigh Wiki
はてなブックマーク
パンパでガウチョ
kyorecobaのdel.icio.us
BLOGNAVI
XREA.COM
VALUE-DOMAIN
PHP ver 4.4.2
Powered by Nucleus CMS Creative Commons
feedberner banner この日記のはてなブックマーク数
BlogPeople
あわせて読みたい