• ベストアンサー

船のクイズの一般化

先日、このサイトで面白いクイズを見つけたので(590136)、問題を一般化してみました。 ------------------------------------------------------ 船がn艘あり、これを船頭さんが一人で対岸まで移動します。 n艘の船は川を横切るのにそれぞれ1分、2分、4分、、、2^(n-1)分かかります。 船頭さんは1艘を運転し、もう1艘をその船に牽引することができます。 ただし、2艘を同時に移動する場合、そのスピードは遅い方の船のスピードになります。 また、船で元の岸に帰ってくる時間も考えなければなりません。 船を全て向こう岸まで移動するのに必要な最短時間Sn(分)を求めてください。 ------------------------------------------------------ nを1から考えてみると、 n = 1 (1)のとき       S1 = 1 n = 2 (1,2)のとき      S2 = 2 n = 3 (1,2,4)のとき     S3 = 7 n = 4 (1,2,4,8)のとき    S4 = 15 n = 5 (1,2,4,8,16)のとき   S5 = 28 n = 6 (1,2,4,8,16,32)のとき S6 = 52    ・    ・ そこでお聞きしたいのですが、 (1)S5、S6は、これで合っているでしょうか? (2)Snを一般式で表すことができるでしょうか? どうか、よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • ryn
  • ベストアンサー率42% (156/364)
回答No.7

n = 4 の場合からの類推で。 時間のかかる船2隻で一緒に移動するという方針で考えてみます。 1番遅い船にまぎれて2番目に遅い船を移動させたのに そのどちらかで戻ってきては意味がありません。 したがって、先に1分、2分かかる船で移動しておきます。 具体的には 往路       復路 1-2        1(or 2) 2^(n-2)-2^(n-1)  2(or 1) 1-2        - で遅い2隻の船を移動させます。 ここまでで、合計 2^(n-1) + 5 分かかることになります。 残りは 1,2,…,2^(n-3) 分かかる船 2^(n-2)隻です。 したがって、  S_n = S_(n-2) + 2^(n-1) + 5 という漸化式が成り立ちます。 n の偶奇で場合分けが必要なので、 とりあえず偶数の場合を見てみると  S_n - S_(n-2) = 2^(n-1) + 5  S_(n-2) - S_(n-4) = 2^(n-3) + 5   :   :  S_8 - S_6 = 2^7 + 5 +)S_6 - S_4 = 2^5 + 5 ――――――――――――――――  S_n - S_4 = (2^5 + 2^7 + … + 2^(n-1)) + 5(n/2 - 2) したがって、n が偶数で n≧4 のときは  S_n = S_4 + (2^(n+1) - 32)/3 + 5(n/2 - 2)    = (2/3)*2^n + (5/2)n - 17/3 のようになります。 同様にして n が3以上の奇数のときは  S_n = (2/3)*2^n + (5/2)n - 35/6 となります。 最初の前提を証明できていないので、 2^(n-1) と 2^(n-3) を同時に移動させるなどのような 方法でもっと短い時間で移動する方法があれば、 上の議論は無意味になってしまいますが…。

uminezumi
質問者

お礼

こんばんは。 とても分かりやすくて、スッキリしたご回答をありがとうございました。最短時間を求めるアルゴリズムは、これ以外には私には想像もつきませんが、もっと画期的な方法があるのでしょうか? ともあれ、このような明解な回答をいただいて、非常に満足しています。 本当にありがとうございました。

その他の回答 (7)

  • c6h6
  • ベストアンサー率33% (5/15)
回答No.8

No.3 , No.4のものです。 最初に1and2で移動、2で戻る 一番遅いand二番目に遅い船で移動、1で戻る ということで2^(n-1)+5の時間をつかえば 遅い2隻がいなくなる。 奇数隻の場合、 Sn=2^(n-1) + 2^(n-3) + ・・・ + 2^1 +5(n/2 -1) 偶数隻の場合、 Sn=2^(n-1) + 2^(n-3) + ・・・ + 2^2 +5(n-1)/2 -2 というところまではわかったのですが、 2^(n-1) + ・・・ + のところを私には一般式にあらわすことができません。

uminezumi
質問者

お礼

ベンゼンさま、いや違いました、c6h6さま、再度のご回答をありがとうございます。 最初にご回答をいただいてから、あっという間にたくさんのご回答をいただき、やっと私の頭でも理解できました。解法のやり方としては、おっしゃられている通りだと思います。楽しい数時間でした。大変ありがとうございました。

uminezumi
質問者

補足

みなさま、たくさんのご回答をありがとうございました。数学カテゴリーは、その他(ライフ)に次いで私の好きなカテゴリーですが、いつも明解な回答を目にして、みなさまの頭脳にただただ尊敬の念を抱いています。私の悩みも解決しましたので、これで閉めさせていただきたいと思います。 たくさんの回答をいただいて、ポイントをおつけするのは、いつも悩むのですが、非常にわかりやすく説いてくださったrynさまに20ポイント、まっ先にS5、S6を検算し、偶数、奇数の場合分けが必要と予測してくださったfushigichanさまに10ポイントをつけさせていただきましたが、ほかの方々にもポイントをおつけしたい気持ちでいっぱいです。 みなさま、大変ありがとうございました。またいつか、しょーもない質問をすると思いますが、どうぞよろしくお願いいたします。

  • ticky
  • ベストアンサー率36% (123/337)
回答No.6

こんばんは。 n>=4において、 S_n=5+2^(n-1)+S_(n-2) が成立しているようです。 この式は、始めに1分かかる船と2分かかる船で行って、1で戻ってきて、一番遅い船と次に遅い船で行って、 2分かかる船で戻ってくると、 後は、1分かかる船から2^(n-2)分かかる船までが残っている・・・という方法を採用した場合です。 これに基づくと、 S_1=1 n>=1で、 S_(2n)=4/3(1/4-(1/4)^n)*2^(2n+1)+5(n-1)+2 S_(2n+1)=4/3(1/4-(1/4)^n)*2^(2n+1)+5(n-1)+7 だと思います。 最速かどうかも分からないし、計算が合っているかどうか不安ですが。

uminezumi
質問者

お礼

こんばんは。 途中の過程が不明で、どうやって導かれた式かわかりませんでしたが、S_(2n)は合っているようですね。S_(2n+1)は私の検算の仕方が悪いのか、答えが一致しませんでしたが、考え方は、理解できました。 > 最速かどうかも分からないし、 いえ、これが最速だろうと思います。って、私が太鼓判押しても説得力はありませんが、、、。 ご回答をありがとうございました。

  • TK0318
  • ベストアンサー率34% (1261/3651)
回答No.5

n=2k、2k-1の時で場合分けします。 *これは船が2隻増えた場合 ・1,2で渡る ・1で帰る ・an、a(nー1)で渡る ・2で帰る となりSnはSn-2に比べてan+5分余計にかかります。 よって S2k=S2(k-1)+a2k+5 S2k-1=S(2k-3)+a(2k-1)+5 a2k=2*4^(k-1) a2k-1=4^(k-1) a1=1 a2=2 となります。 あとは等比数列ですが・・・私の実力では解けん^^; 多分これでいけると思います・・・

uminezumi
質問者

お礼

こんばんは。いつもお世話になります。 考え方は分かりやすくて、私にも理解できました。 > あとは等比数列ですが・・・私の実力では解けん^^; またまたご冗談を。TK0318さんの実力からして、「解けるけど、面倒くさいから、自分で解いてね」というメッセージだと理解しました。☆^^☆ ご回答をありがとうございました。

  • c6h6
  • ベストアンサー率33% (5/15)
回答No.4

Oh! なるほどー すでに置いてきた船で帰ってきてもいいんですね。 ちょっと考えてみます。

uminezumi
質問者

お礼

下のお礼でも申し上げましたが、そういうことでした。 何か、ヒントを思いつかれたら、お教えください。 よろしくお願いいたします。 何度もお手を煩わせて、申し訳ありませんでした。

  • c6h6
  • ベストアンサー率33% (5/15)
回答No.3

最短で全部運ぶ考え方としては、 「常に遅い船を1番早い船で曳航していき、復路を最短時間で帰る。」ということだと思います。 ということは、 3隻:4+1+2=7分 4隻:8+1+4+1+2=16分 5隻:16+1+8+1+4+1+2=33分 6隻:32+1+16+1+8+1+4+1+2=66分 7隻:64+1+32+1+16+1+8+1+4+1+2=131分 n隻あった場合の時間は、 往路は2+4+・・・+2^(n-1) 復路はn-2回×1分 ここで便宜上、復路の1回分を往路に足してしまって 往路=1+2+4+・・・+1・2^(n-1)=2^n-1 復路=n-3 足し合わせると n>=3回の場合 2^n + n -4 とNo.1の方と同じ答えになりますが? これ以外の最短ってありますかね? 例えば、 遅い船同士で運ぶとします。 n=4のとき (8 and 4)を運ぶ 8分往路4分復路 (4 and 2)を運ぶ 4分往路2分復路 (2 and 1)を運ぶ 2分往路 計20分かかっちゃいます。

uminezumi
質問者

お礼

ご回答をありがとうございます。 ちょっと私の書き方が不十分で、申し訳ありません。 ご指摘のように、「帰りの船はどれでもかまわない」という条件が書いていませんでした。

回答No.2

uminezumiさん、こんばんは。 面白いクイズですね!! >(1)S5、S6は、これで合っているでしょうか? n=1のとき、S1=1 n=2のとき、S2=2はいいと思います。 n=3のとき、行き1,2帰り1で3分      行き1,4で4分なので合計7分。      S3=7 n=4のとき、行き1,2帰り1で3分      行き4,8帰り2で10分        行き1,2で2分なので、合計15分      S4=15 n=5のとき、行き1,2帰り1で3分       行き8,16帰り2で18分      残りのフネは、(1,2,4)なので      S5=3+18+S3=28 n=6のとき、行き1,2帰り1で3分       行き16,32帰り2で34分      残りのフネは、(1,2,4,8)なので、      S6=3+34+S4=52 となっているので、S5=28,S6=52というuminezumiさんの予想は合っていると思います。 >(2)Snを一般式で表すことができるでしょうか? あらわすことはできるのでしょうか・・?? フネの数が、偶数のときと奇数のときで場合わけしないといけないかも知れないですね。 S1=1 S2=2 S3=4+S1+S2 S4=13+S2 S5=21+S3 S6=37+S4 S7=69+S5 S8=133+S6 ・・・と予想してみました。 (S8-S7)=64+(S6-S5) (S7-S6)=32+(S5-S4) (S6-S5)=16+(S4-S3) (S5-S4)=8+(S3-S2)←ここまでは、数字のところは、2の何乗かになっているんですが・・ (S4-S3)=8 (S3-S2)=5 (S2-S1)=1 S[n+1]-S[n]=a[n]とおくと、 a1=1 a2=5 a3=8 a4=8+a2=13 a5=16+a3=24 a6=32+a4=45 a7=64+a5=88 う~ん・・・この数字に関連性はあるのかな・・ 階差は考えないほうがいいみたいですね・・ ちょっと、ここまでしか分からないです。申し訳ないです。

uminezumi
質問者

お礼

こんばんは。 私の質問におつき合いくださいまして、ありがとうございます。 > となっているので、S5=28,S6=52というuminezumiさんの予想は合っていると思います。 私の考え方と同じでしたので、fushigichanさんにそう言ってもらえてホッとしています。 S1、S2、・・・、Snを1つの数列と見て解こうとしましたが、私には難しすぎました。やはり、偶数、奇数で場合分けしたほうがよさそうですね。 > ちょっと、ここまでしか分からないです。申し訳ないです。 いえいえ、とんでもありません。解法の手がかりを、ありがとうございました。 ご回答に感謝しています。また何かわかりましたら、お教えいただければ幸いです。

回答No.1

n = 1 (1)のとき       S1 = 1 n = 2 (1,2)のとき      S2 = 2 n = 3 (1,2,4)のとき     S3 = 7 まではいいのですが, n = 4 (1,2,4,8)のとき    S4 = 16 ではないかしら? 順番に机上試行してみると, S1 = 1 S2 = 2 S3 = 4 + 1 + 2 S4 = 8 + 1 + 4 + 1 + 2 = 2^(4-1)+1+S3 同様に(n≧3のとき) Sn = 2^(n-1)+1+Sn-1  となるのではないか,と思います。 これだと,  S4 =16 S5 = 33 S6 = 66 となって, 一般式は, n=1のとき Sn =1 n=2のとき Sn =2 n≧3のとき Sn = 2^n +n-4 ではないかしら   

uminezumi
質問者

お礼

さっそくのご回答をありがとうございます。 私も最初は n = 4 のときは16かなと思ったのですが、 質問No.590136 にありますように、最短時間は15分 が正解のようです。 また何か新しいことがわかったら、教えていただけたら嬉しいです。

関連するQ&A

  • クイズ?どうしてなのでしょう

    船が4艘あり、これを船頭さんが一人で対岸まで移動しなければなりません。 4艘の船はスピードが異なり、川を横切るのにそれぞれ1分、2分、4分および8分かかります。 船頭さんは1艘を運転し、もう1艘をその船に牽引することができます。 ただし、2艘を同時に移動する場合、そのスピードは遅い方の船のスピードになります。 また、船を牽引して向こう岸に行った船頭さんは、橋などを利用することなく、 船に乗ってまた川を横切って帰ってくる必要があり、その帰りの時間も考えなければなりません。 さて、船頭さんは最短何分で船を全て向こう岸まで移動することができるでしょうか? 普通?に考えると16分だと思うんですが、15分でできるらしいです。

  • 数学Bの数列の和と一般項について

    たびたびすいません Q.初項から第n項までの和SnがSn=nの二乗+nで表される一般項をもとめよ A.問いより Sn-Sn-1=(n-1)の二乗+n-1 an=2n(n≧2)━(1) またa1=S1=1の二乗+1=2 (1)をみたすのでan=2n(n≧1) こう教科書に書いてあるのですが、何故━(1)では(n≧2)なのに最終的には(n≧1)なのでしょうか

  • 数列の和と一般項

    最初に数学の教科書は啓林館を使ってます。 学校の授業でどうしても理解ができないのでこちらに相談してみることにしました。 n≧2のとき an=Sn-Sn-1 という公式のひとつですが、例題を使います。 初項から第n項までの和SnがSn=n2乗+6nで与えられる数列の一般項anを求めよ。 「解」 a1=S1=1の2乗+6×1=7 n≧2のとき、an=Sn-Sn-1 =(n2乗+6n)-{(n-1)2乗+6(n-1)} =2n+5 でここで自分は理解できないところがあります。 それは、Snの部分に(n2乗+6n)が入るのはなんとなくわかりますが {(n-1)2乗+6(n-1)} の部分がどうしてそうなるのかがわかりません。 単純に言うとSn-1の部分が理解できないといったほうがいいでしょう。 わかりやすく教えてください。

  • 数列

    数列{ak}の初項から第n項までの和SnがSn=3n^2+4n+2(n=1,2,3,…) と表されている。 (1)一般項akを求めよ. (2)数列{(ak)^2}の初項から第n項までの和をnで表せ。 という問題で、 n=1のときa1=S1=9 n≧2のときan=Sn-S(n-1)で =(3n^2+4n+2)-{3(n-1)^2+4(n-1)+2} =6n+1 となったんですがn=1を代入したら7になり 成り立たなくなってしまいました、、 どうすればいいんでしょうか? あと(2)もアドバイスくださったらうれしいです。

  • こんなクイズを考えました。この解答でOK?

    こんなクイズを考えました。この解答で正しいでしょうか? 問題 東京スカイツリーの頂点から隅田川に向かって水平に飛び出しました。 川に着水するためにはスカイツリーの頂点を 時速何キロから時速何キロの範囲で隅田川方向に飛びだせばいいでしょうか? 以下の条件とします。 重力加速度 9.8[m/s2(二乗です)] スカイツリーの頂点の高さ 634m スカイツリーの頂点から隅田川への手前の岸まで720m スカイツリーの頂点から隅田川への向こう岸まで820m (つまり、川幅は100m) 空気抵抗は考えない。 あと、スカイツリーの頂点は一般人は立ち入り禁止とか、 人間のジャンプ力では無理、とか 途中のビルが邪魔とか、 そういうのは考えない。クイズだから。 __________________ 解法 スカイツリーの高さ =634mなので この頂点から自由落下したばあい、地面への到達時間は 11.37(秒) 隅田川の幅100m 手前の岸の距離 720m 向こう岸 820m 11.37秒間に720m-820mに納まる発射速度 最低速度 720m/11.37s=63.32m/s 時速(km/h)に直すと 63.32 * 3600 /1000 = 227.95km/h 最高速度 820m/11.37s= 72.12m/s 時速(km/h)に直すと 72.12m/s * 3600 /1000 = 259.63 km/h 解答 最低速度 227.95km/h 最高速度 259.63km/h この範囲で隅田川方向に飛び出せば、隅田川の水面に着水できる。

  • 数列

    問題は 数列〔an〕の初項から第n項までの和SnがSn=n^3+3n^2+2nのとのと、 一般項anを求める問題です。 求める際にn=1,n≧2の時を求めるのでしょうか? それから an=Sn-S(n-1)をなぜ利用するのでしょうか?

  • シグマ

    1…自然数nに対して、√nを超えない最大の自然数を a_nで表し、さらに、Sn=Σa_kと定めて、 S_10,S_50の値、それとSnはm^2≦n≦m^2+2mを満たす自然数mを用いてどのように表せるか。 2…一般項がa_n=(-1)^n・n(n+1)で与えられる数列{a_n}について 初項から第n項までの和をSn=Σa_kで表すときS_20 を求める また、S_n≦-800となる最小のnを求める (Σの上にはn,下にはk=1が書いてあると思ってください) 長々とすみませんがお願いします。

  • 数列の和に関して

    現在高校2年です。独学で数列をやっているのですが、質問させていただきます。 数列の和に関して一般項を求める問題なのですが、Sn-S(n-1)=An わかりづらいかもしれないですが、数列の和をSn、Snからn≧2のときn-1したS(n-1)との差は、数列がひとつずつズレて、Anになるってことです。このAnは第n項の値なのはみたまんまなんですが、何でこれが一般項になるんですか?ただの末項なのに。どうぞよろしくお願いします。一応僕が考えたのは、第n項の値はある一般項にnを代入した値だから、末項でもあるし、一般項で表すこともできるみたいな感じなんですけど、違ってますか?しかし、問題には、Sn=3n(n+5)で表せるって書いてあるんですが、これ自体が和の一般項だから先ほどの公式に合わせてAnをだすとそれが一般項になるんですか?かなり混乱してます。

  • 数列の和と漸化式について

    現在高2です。できれば、かなり混乱してますので、わかりやすく教えていただきたいです。よろしくお願いします。 数列{An}の初項から第n項までの和をSnとする。Sn=1-nAn (n=1,2,3,…)が成り立つとき、この数列の一般項Anを求める。このような問題です。 Sn-S(n-1)=An を使うことは、わかります。 すると、  Sn=1-nAnとS(n-1)=1-(n-1)A(n-1) の、差は、Sn-S(n-1)=-nAn+(n-1)A(n-1)となり、Sn-S(n-1)=An だから、結局この式は、 An=-nAn+(n-1)A(n-1)になるはずです。 現在ここからわかりません。この後、どのように考えて、続けるか全く分からない状態なので、よろしくお願いします。 答えは、An=1/(n+1)n になるみたいです。

  • A地点から B地点に人を移動する問題なのですがとけません

    川を挟んで手前がA地点、向こう岸がB地点とします。 この川を船で渡ります、但し一度に乗れる人数は最大2人です 一人でのることも出来ますが、0人・3人とかではだめです。 手前の岸に6人います、男女 各3人ずつです。 全員 B地点に移動させます。移動回数に制限はありません。 但し、A地点、B地点 共に、男性の数が女性の数を上回っては いけません。船は行った岸に着くと全員 岸に降りてしまいます。 この時に、上回ってもだめです。 中々 解けずに困ってます。皆様のお知恵をお借りできれば 幸いです、よろしくお願い致します