アウトかセーフか分からないときは答え公開しないほうが無難
お題:コンプリートパネル(出展:高校生クイズ2018)
5×5のパネルが与えられる。各パネルは赤色か白色である。
各パネルに侵入すると、そのパネルの色が赤なら白、白なら赤に変化する。
最初のステップは、場外(左下のパネルの左隣)から左下のパネルへ侵入することである。
以降のステップでは、上下左右に移動することができる。
ただし、ひとつ前のパネルや場外に移動することはできない。
すべてのパネルを白色にするための移動経路を構成せよ。
WWWRR
WWWWR
WWWWR
WWWRR
RRRRW
=> 10 RRRRURUUUL (→→→→↑→↑↑↑←)
WWWWW
WWWWW
WWWWW
WWWWW
WWWWW
=> 0 (移動の必要なし)
WWWWW
WWWWW
WWWWW
WRWWW
WWWWW
=> 21 RRRRULULLDDRULURRDRDL (必ずしも最短経路である必要はない)
>ひとつ前のパネルや場外に移動することはできない
全部踏めばいいんだからライツアウトの解法の亜種で解けるんじゃねえの
状態を変えずに任意の場所まで移動できるなら
6箇所だけそれぞれ1つだけRだった場合を計算してあとは回転なりなんなりして重ね合わせればいけるな
↑
□□□
□□□→
2*3の全パターンで、この二つの方向のどちらかに抜ける経路が存在すればいい
あとは合成で何とかなる
0961デフォルトの名無しさん2018/09/19(水) 21:11:11.50ID:zcXFtBV7
うーん。これはブルートフォースでやろうとするとかなり無駄が多くなって時間とメモリを山盛りに食いそうな予感。
5x5=25マスの赤or白の2値だから25bit、現在位置25通り(5bit)に前回位置相対で4通り(2bit)、あわせて32bitパターン?
5x5は序の口で、100x100くらいが本命でしょう
ついでに最短の最適解も
問題も作るだけならラクだから1000x1000だって0.1秒程度で作れる
もちろん解くのは面倒
0965デフォルトの名無しさん2018/09/20(木) 09:43:56.68ID:cMPVhU9i
プログラム考える以前に解くためのいいアルゴリズムが思い浮かばん
辺の長さが3以上の時は戻るの禁止ってルールは実質的に無視できそうだな
というのも閉路を2周すれば元通りに戻るわけだから
xxx
x↓x
x↑x
上に行ってまた下に戻るって進みたいときは
→↓x
↑←x // 中央「←」を3回目に踏むときは下に進む
x↑x
ってすればいいわけで
2*2 かどちらかの辺が 1 の場合以外は任意のパターンで解があることになる
RWWWR
WRWWW
RWRWW
RWWRW
WRRWR
全てのパターンが解けて最長がこの形で44手かかる
となったけどできたばかりだからまだまだバグがありそう
ttps://cdn-ak.f.st-hatena.com/images/fotolife/m/motcho/20180127/20180127034515.png
連続殺人犯が全ての目撃者を消して完全犯罪を目論む
0974デフォルトの名無しさん2018/09/23(日) 12:36:34.31ID:FE85zabB
文字列のペアがn対与えられる。
s(1),t(1)
...
s(n),t(n)
この時、ペアを適切な数選び適切な順番で並べる事で
s(a1)s(a2)...s(ak) = t(a1)t(a2)...t(ak)
とできるかどうか判定せよ
(ペアを重複して選ぶのもOK)
応用だけは思い付いた
ATCGTTGTAC, AAATTTCTCTCTTTCT
GTGATGCGTTGCAGGT, ATGCCATGTGAC
AAATTGCTGAC, ATGTTGCGTC
ATGCGTACCCACG, AGTGCGTTCGTAC
...(以下、1万行続く)
重複しても良いってなっているのでどうやっていいか分からなくなった。
重複なしなら単に順列の問題で全パターン調べれば良いだけなんだけどな。
0981デフォルトの名無しさん2018/09/24(月) 14:56:44.30ID:hAv+WLv3
>>979
含むと何も並べなければOKって事になりそう 0983デフォルトの名無しさん2018/09/24(月) 16:14:35.67ID:twjLvrgB
任意のパターンで解けることはここですでに言及されてるよ
エビングハウスの忘却曲線っていって人間のベストな復習間隔があるんだけど
例えば今日勉強したことは明日復習して3日後、1週間一ヶ月ごとに復習すると完全に長期記憶になる
これをスマホアプリで管理するプログラミングしたい
理屈は簡単、カレンダーに今日覚えたことを「○○の20-40ページ」とか記入して
明日になったら今日やる復習を表示してくれるシステム
プログラミングのプの字も知らんのだ
どの言語を使うとかもわからんmacとxcodeはある
どういう作り方すればいいかわからない教えてください個人用に使う
0988デフォルトの名無しさん2018/09/25(火) 02:40:25.79ID:VjhU4mZC
>>986
このスレはそういう質問するスレではなく、誰かがお題を出して回答したい人がプログラミングして回答するスレだ。
そういう質問はまずは既存のソフトでそういうことが出来るのがないか以下のスレで聞いた方が良いと思う。
気軽に「こんなソフトありませんか?」Part.176
https://egg.5ch.net/test/read.cgi/software/1529929775/
それからどうしてもプログラムを自分で作ってみたいというのであれば何らかの言語を覚える必要があるが、
MacやiPhoneの場合は何が良いのか俺はよく知らない。この頃だと Swift なんだろうか? Swift は確か xcode
使って作れたと思うが、詳細は今の俺には分からん。MacOSやiOS関係のスレを探して聞いてくれ。 お前らってファイルそのものへの参照を禁止したうえでquineを自力で書ける?
0993デフォルトの名無しさん2018/09/28(金) 21:10:47.83ID:WW7qy9i/
埋め
10011001Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 157日 0時間 44分 30秒