X



さっきのアルゴリズムの問題の答え載せるで〜
■ このスレッドは過去ログ倉庫に格納されています
0001風吹けば名無し
垢版 |
2022/09/03(土) 18:37:44.14ID:4Diq+sOs0
Nを自然数として、
Nの正の倍数における各桁の和の最小値を求めるアルゴリズムで一番効率いいものはなんだ?

この問題や
まだ自分で解きたいやつはそっ閉じしてや
0002風吹けば名無し
垢版 |
2022/09/03(土) 18:38:13.27ID:FsQbcQ8Ra
立ててくれて良かったわ
0003風吹けば名無し
垢版 |
2022/09/03(土) 18:39:25.05ID:4Diq+sOs0
まずはNで割った余りの世界を考えるんや

掛け算も足し算も全部Nで割った余りに換算される世界を想定してや

例えばN=7なら

6+5=4やし、
2×6=5
0004風吹けば名無し
垢版 |
2022/09/03(土) 18:40:22.28ID:4Diq+sOs0
ここで、0〜N-1という番号のついた頂点を平面上に配置するんや
0005風吹けば名無し
垢版 |
2022/09/03(土) 18:40:26.06ID:4YNDGMUz0
合同式ってことね
0006風吹けば名無し
垢版 |
2022/09/03(土) 18:40:48.16ID:4Diq+sOs0
>>5
その通りやで〜
数学分かるやつならZ/NZのことやな
0007風吹けば名無し
垢版 |
2022/09/03(土) 18:41:10.64ID:4Diq+sOs0
>>4
ほんでこれらの頂点に辺を加えてくんやけど
0008風吹けば名無し
垢版 |
2022/09/03(土) 18:43:03.87ID:4Diq+sOs0
任意の頂点pに対して、
頂点10×pに「コスト(辺を渡る値段と思えばええで)0」の有向辺をくっ付ける

さらに頂点pから頂点p+1に「コスト1」の有向辺をくっ付けるんや
0009風吹けば名無し
垢版 |
2022/09/03(土) 18:43:08.69ID:TcrNK1PR0
一番効率いいかどうかはわからんくね
0010風吹けば名無し
垢版 |
2022/09/03(土) 18:44:05.37ID:4Diq+sOs0
そうすると>>1の問題は
頂点1から頂点0に渡る経路で最もコストが安いもの
って問題に変化するんや
0011風吹けば名無し
垢版 |
2022/09/03(土) 18:44:40.02ID:4Diq+sOs0
あとはそこから有向グラフの最短経路問題を解けばええから
深さ優先探索とかをすればおしまいや
0012風吹けば名無し
垢版 |
2022/09/03(土) 18:45:23.20ID:zqJcmv24a
助かるわ
まだ理解できてないけど読み解いていくで
0013風吹けば名無し
垢版 |
2022/09/03(土) 18:45:32.60ID:kqZ5qg8u0
全探索に対してオーダはいくらになるんや?
0014風吹けば名無し
垢版 |
2022/09/03(土) 18:45:48.37ID:4Diq+sOs0
1という数から(1を足す or 10倍する)という操作を繰り返してNの倍数を作る

ってのが頂点1から頂点0に渡るって行為になるわけやけど
0015風吹けば名無し
垢版 |
2022/09/03(土) 18:47:01.32ID:7dFouo3Xa
はぇ~
数式から経路探索問題に置き換えて解くんか
競プロ民って凄いな
0016風吹けば名無し
垢版 |
2022/09/03(土) 18:48:26.48ID:4Diq+sOs0
「各桁の和」という意味では

pを10×pにしても変化しないからコストは0

pをp+1にしたら1だけ増えるからコストは1

ってことなんや
0017風吹けば名無し
垢版 |
2022/09/03(土) 18:50:48.81ID:zqJcmv24a
9→10に行くのがコスト1ってのが分からんで
高校数学で止まってるから群?とか環?とか慣れてないんだわ
0018風吹けば名無し
垢版 |
2022/09/03(土) 18:52:09.11ID:TcrNK1PR0
いきなり答えにたどり着くならそれが早そうやけど
ヒューリスティックな絞り込みとか出来んのかな確率的に
0020風吹けば名無し
垢版 |
2022/09/03(土) 18:57:31.71ID:zqJcmv24a
1から1001を作るには
x10を3回、+1を1回の操作が必要で
ゴールが7の倍数だから7つの頂点で0を目指す感じやな
分かってきたで!!!!
0021風吹けば名無し
垢版 |
2022/09/03(土) 18:58:09.59ID:4Diq+sOs0
>>17
たしかにそれがコスト1ってのはおかしいんやけど、
最短経路を見る上では関係ないんやで
コストの安さで考えれば1を足し続けて桁上げするより10倍した方が効率ええからね
0022風吹けば名無し
垢版 |
2022/09/03(土) 18:58:51.50ID:4Diq+sOs0
>>19
ちょっとまってね
グラフを描くで
0023風吹けば名無し
垢版 |
2022/09/03(土) 18:59:30.28ID:4Diq+sOs0
>>20
天才やな
このテキトー解説で分かるのは相当頭ええで
0024風吹けば名無し
垢版 |
2022/09/03(土) 19:02:26.67ID:6wq1G1wbM
円筒形の模型作って探索するのか
よくこんなん思いつくなぁ
0025風吹けば名無し
垢版 |
2022/09/03(土) 19:04:09.76ID:zqJcmv24a
>>23
残念ながら元スレ1じゃなくて外野なんやけどな
勉強になったわさんきゅーやで!
0026風吹けば名無し
垢版 |
2022/09/03(土) 19:05:41.20ID:1DKQklJZa
はえーこれで答え出るんや
0027風吹けば名無し
垢版 |
2022/09/03(土) 19:11:19.24ID:1DKQklJZa
落ちるで
0028風吹けば名無し
垢版 |
2022/09/03(土) 19:13:48.02ID:6wq1G1wbM
通る頂点の数関係あるんか?
深度で分けてひたすら7で割るわけじゃないのか
0029風吹けば名無し
垢版 |
2022/09/03(土) 19:16:10.52ID:zqJcmv24a
ワイ程度の理解で伝わるか分からんが

例えばN=7なら
コスト2の数つまり11、101、110、1001、…から7の倍数を探して見つかれば答えは2や
無かったらコスト3の数つまり111、1110、1101、…から探して見つかれば答えは3や
って感じに探していくんやけどこれだけなら無限回の試行が必要やから
7で割った余りに注目して有限回の試行で済ませば終わりやって感じで
それをグラフに落とし込んだのが1の答えやって感じで理解したわ
間違っとったらすまんな
0030風吹けば名無し
垢版 |
2022/09/03(土) 19:19:57.20ID:6wq1G1wbM
>>29
考えてみるありがとう
0031風吹けば名無し
垢版 |
2022/09/03(土) 19:23:51.35ID:6wq1G1wbM
頂点の数の上限ってことかありがとう
>>1>>29
0032風吹けば名無し
垢版 |
2022/09/03(土) 19:25:25.55ID:3dtO2HlDa
すまん性の倍数におけるってどういうこと
0033風吹けば名無し
垢版 |
2022/09/03(土) 19:30:53.13ID:bsIIGDh0a
>>29
7でなにをわるん
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況