
エントリーの編集

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
[頭の体操] 逆ポーランド記法の列挙とその計算 - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
[頭の体操] 逆ポーランド記法の列挙とその計算 - Qiita
require "set" NUMBERS = [1, 2, 3, 4] SIGNS = %i[+ - / *] results = NUMBERS.permutation(4).uniq.ea... require "set" NUMBERS = [1, 2, 3, 4] SIGNS = %i[+ - / *] results = NUMBERS.permutation(4).uniq.each.with_object(Set.new) do |numbers, results| (SIGNS * 3).permutation(3).uniq.each do |signs| a, b, c, d = numbers x, y, z = signs [c, d, x, y].permutation(4).uniq.each do |combination| next if combination.join.match(/\A([^\d]{2})/) results << ([a, b, *combination, z]).join(" ") end end end # results.s