Community Spring Cleaning week is here! Join your fellow Maveryx in digging through your old posts and marking comments on them as solved. Learn more here!
Free Trial

ウィークリーチャレンジ

トップになるためのスキルをお持ちですか? ウィークリーチャレンジを購読しましょう。ベストを尽くして問題を解決し、解決策を共有して、他のユーザーがどのように同じ問題に取り組んだのか確認しましょう。私たちも解答例を共有しています。

チャレンジ`#48: スウドクを解いてみよう!

SaoriG
Alteryx Alumni (Retired)

先週の課題の解決策は こちらからご覧いただけます。 

 

チャレンジ48 で、ついに我々はエベレストのトレッキングマイルストーン:キャンプ4へと到着しました。正式に デスゾーンに入ったことを祝い、パズルゲームの達人@TerryTによって作成されたチャレンジに挑戦しましょう! 

 

スウドク(数独)は太い線で示された3×3のブロックに区切られた 9×9の正方形の枠内に1〜9までの数字を入れる一般的なパズルです。

各パズルは81文字の文字列としてエンコードされています。

 

このチャレンジには、3段階のレベルがあります:

 

ビギナー:
ビギナーと中級のスタートファイルを使用して、行を 9 文字ずつ区切ってパズルを解析します。列とボックスを整列し、空のセルは0として並べましょう。

 

中級:
ビギナーと中級のスタートファイルで提供されるパズルを解いてください。

 

上級:
上級スタートファイル(ウィキペディアのパズル)から数独パズルを解いてください。

 

mt everest camp.gif

Welcome to the Death Zone (Source: GIPHY)

Tokimatsu
クエーサー

上級まで解けました。今回は楽しかったけど時間がかかりました。

 

スポイラ
中級までで動きを理解して、試行錯誤の結果、上級はマクロにして作り直しました。
上級というもののこのワークフローでは解けるのは比較的易しい数独だけだと思います。
適当に数字を入れて矛盾がないか調べるタイプのロジックは超上級?
challenge_jp_48_macro.PNGchallenge_jp_48_main.PNG

  



 

DaisukeTsuchiya
パルサー

今回は難しかったです。中級までは30分で行けたのですが、上級でどはまりでした。できたときは感動したのですが、ネットにのっている数独が解けるのかと試したのですが回答が絞り切れず、駄目でした。なんかロジックをさらに工夫しなければいけなのですね。自分はここが限界です。

スポイラ
キャプチャ.PNG
DaisukeTsuchiya
パルサー

自分は相当ゴリゴリやったのでかなり大変でしたが、時松さんは随分きれいに解きましたね。恐れ入りました。

AkimasaKajitani
17 - Castor
17 - Castor

中級までは比較的すんなり行きましたが、上級に行くと悩みました・・・もっとスマートな方法があるような気がしています

スポイラ
初級・中級
biginner_inter.png
上級
advance.png
上級のマクロ(中級も使えると思います) ※繰り返しマクロです
macro.png

 

NaokiMurano
アトム

ウィークリーチャレンジは初めてです。上級も解けたのでIterative Macroを用いてよりすっきりしたワークフローにしてみました

Qiu
20 - Arcturus
20 - Arcturus

中高級はNo Ideaので、またチャレンジしてみます。

スポイラ
Capture.PNG
Satoshi1
アトム

数か月前の課題ですがパズルを解くというお題とBeginnerのTagにつられて挑戦。まだ自信をもって使える機能が少ないので原始的なやり方でどうにかビギ・中級問題を解決。上級問題に適用するも4つの0が置き換わっただけ。
ここで諦めようと思ったが、試しに手動でコピペ・実行を繰り返してみたら10回で解答に到達。反復マクロという機能を使えば解けそうだと思い、ネットで調べてどうにか解答までたどり着いた。
6月27日朝日新聞土曜版の★☆☆☆☆問題はこれで解けた。★★★★★問題(自力で解けた)では一つの0も置き換えられず撤退。逆にちょっとほっとした。

Satoshi1
アトム

一週間前に投稿した際は正規表現がうまく使えない、Substring関数を知らない状態で作っていたのでかなり恥ずかしいWorkflowになっていました。少し勉強してロジックはそのままで簡素化したので自己満足のため再投稿します。行・列の組合せにブロック番号を振り分けるところはサボりました。

gawa
15 - Aurora
15 - Aurora

中級はバッチマクロ使いました。同じように上級をやろうとしたのですが、このやり方だとレコード数が億いくな・・・と思い、そっと画面を閉じました。

スポイラ
gawa_0-1631010245075.png
gawa_1-1631010268561.png