安西くん、馬場くん、千葉くん、の男子3人、大東さん、遠藤さん、藤田さん、後藤さん、の女子4人が1列に並ぶとき、以下の問題に答えよ。
(1)両端が男子である並び方は何通りあるか、答えよ。
(2)女子4人が続いて並ぶ並び方は何通りあるか、答えよ。
(3)後からやってきた幡田さんを中心に体操隊形に、ひらけ。
はい。
pythonのsortやsortedのメモ書きです。
例
>|python||
before = ["安西くん","馬場くん","千葉くん","大東さん","遠藤さん","藤田さん","後藤さん"]
print(before)
print(before.sort())
print()
print(before)
print(before.sort())
|
before = ["安西くん","馬場くん","千葉くん","大東さん","遠藤さん","藤田さん","後藤さん"] print(before) print(sorted(before)) print() print(before) print(sorted(before))
「list.sort()」
「list.sort()」はもとのリストそのものを変更する
「list.sort()」そのものはNoneを返す
「sorted(list)」
「sorted(list)」はもとのリストそのものを変更しない
「sorted(list)」はもとのリストそのものを変更しない
共通点
before = ["安西くん","馬場くん","千葉くん","大東さん","遠藤さん","藤田さん","後藤さん"] print(before) print(before.sort(reverse=True)) print() print(before) print(before.sort())
before = ["安西くん","馬場くん","千葉くん","大東さん","遠藤さん","藤田さん","後藤さん"] print(before) print(sorted(before,reverse=True)) print() print(before) print(sorted(before))
どちらも引数「reverse」をTrueにすることで逆順にできる
余談
安西くん、馬場くん、千葉くん、の男子3人、大東さん、遠藤さん、藤田さん、後藤さん、の女子4人が1列に並ぶとき、以下の問題に答えよ。
(1)両端が男子である並び方は何通りあるか、答えよ。
(2)女子全員が続いて並ぶ並び方は何通りあるか、答えよ。
(3)後からやってきた幡田さんを中心に体操隊形に、ひらけ。
の解答です。高校数学でしたっけ。
(1)
両端が男子である並び方は3人の男子のうち2人を並べる並べ方です。そのため、3*2通り。(これを確か3P2とか書きますがこれ関連のブログ表記の仕方が分かりません。)
残りの5人の順列の数が5!=5*4*3*2*1通り。
この2つの積を取れば求められるので正答は 3*2 * 5! = 720 通り
違ったら言ってね。
(2)
女子4人全員を群として扱います。この群内の順列が4!通り。
そして、群と残りの男子3人の並び替えが、(1+3)!通り。
この2つの積を取れば求められるので正答は4! * (1+3)! = 576 通り
(3)
うるせぇ