#author("2022-11-03T03:17:17+00:00","","")
*[[Problem 220:http://projecteuler.net/problem=220]] 「Heighwayのドラゴン」 [#d02b7d0b]

D&sub{0}; を2文字の文字列"Fa"とする. n≥1では, D&sub{n};はD&sub{n-1};から以下の変換ルールに従い作られる.
D&sub{0}; を2文字の文字列"Fa"とする. n≥1では, &tex{D_{n}};は&tex{D_{n-1}};から以下の変換ルールに従い作られる.

-"a" → "aRbFR"
-"b" → "LFa&color(black){Lb};"
//FaLb がリンクになる...

つまり, D&sub{0};="Fa", D&sub{1}; = "FaRbFR", D&sub{2}; = "FaRbFRRLFaLbFR",...となる.
つまり, &tex{D_{0}};="Fa", &tex{D_{1}}; = "FaRbFR", &tex{D_{2}}; = "FaRbFRRLFaLbFR",...となる.

これらの文字列はコンピューターグラフィックスプログラムへの命令と解釈できる:
"F"を"1ユニット前へ描け", "L"を"90度左を向け", "R"を"90度右を向け", "a"と"b"は無視する. カーソルの初期位置は(0,0), 向きは(0,1)方向, つまり上とする.

D&sub{n};は n次の"Heighwayのドラゴン"(Heighway Dragon)として知られる奇妙な図となる. 例えば, 下図はD&sub{10};である. 各"F"を1ステップとして数えると, 500ステップ目で図中で強調してある(18,16)に到達する.
&tex{D_{n}};は n次の"Heighwayのドラゴン"(Heighway Dragon)として知られる奇妙な図となる. 例えば, 下図は&tex{D_{10}};である. 各"F"を1ステップとして数えると, 500ステップ目で図中で強調してある(18,16)に到達する.

#ref(http://projecteuler.net/project/images/p220.gif,center,nolink)

D&sub{50};において10&sup{12};ステップ後の座標を求めよ. ~
&tex{D_{50}};において&tex{10^{12}};ステップ後の座標を求めよ. ~
回答は x,y という形式でスペースを入れずに入力せよ.

IP:112.68.65.182 TIME:"2022-11-03 (木) 12:17:17" REFERER:"http://odz.sakura.ne.jp/projecteuler/" USER_AGENT:"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36"

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS