|
uchinyan |
|
他の解法、やっと、正解と一致しました (^^;
#28742の解法を(解法1)としておきます。 (解法2) まず、0 〜 9 の数字が続く組み合わせは、 二つの場合 01, 34 など、三つの場合 234, 789 など、四つの場合 1234, 7890 など、いずれも 10 通りです。 さて、すべての可能な四桁の数 abcd は 0 〜 9 を並べればいいので、10 * 9 * 8 * 7 = 5040 通り。 次に、abcd で数字が二つ続く場合は、ab, bc, cd の三箇所に数字が増える方向又は減る方向に現れて、 それ以外は何でもいいので、10 * 3 * 2 * 8 * 7 = 3360 通り。 しかし、これには、数字が三つ続く場合、数字が四つ続く場合、1287 のように続きがペアになる場合が重複しています。 数字が三つ続く場合は、abc, bcd となる場合で、数字が二つ続く場合の中に二つずつ重複しています。 これは、一回分で 10 * 2 * 2 * 7 = 280 通り なので、これを引きます。 また、続きがペアになる場合 ab cd も、数字が二つ続く場合の中に二つずつ重複しています。 これは、ab を選ぶと cd に a, b が入れないことに注意して、一回分で 10 * 2 * 7 * 2 = 280 通り で、これも引きます。 しかし今度は、数字が四つ続く場合 abcd が、数字が二つ続く場合の中に三つずつ入っていたのですが、 数字が三つ続く場合で二つずつ、続きがペアになる場合で一つずつ入っているので、相殺されてしまい、 引きすぎているので、これの一回分 10 * 2 = 20 通りを足します。 したがって、結局、数字が二つ以上続く場合は、3360 - 280 - 280 + 20 = 2820 通りで、 求めるものは、これを全体から引いて、5040 - 2820 = 2220 通り、になります。 (解法3) これは、(解法2)の方向ですが、数字が二つ以上続く場合を、数字が二つだけ続く場合などに分けて、(解法1)風に数える方法です。 面倒なので、結果だけを示します。 全体:10 * 9 * 8 * 7 = 5040 数字が四つ続く場合:10 * 2 = 20 数字が三つだけ続く場合:10 * 2 * 2 * 6 = 240 数字が二つだけ続く場合: 12xx 型::10 * 2 * (1 * 6 + 6 * 5) = 720 xx12 型::10 * 2 * (1 * 6 + 6 * 5) = 720 x12x 型::10 * 2 * (1 * 7 + 6 * 6) = 860 1278 型::10 * 2 * (1 * 1 + 6 * 2) = 260 合計::720 + 720 + 860 + 260 = 2560 数字が二つ以上続く場合:2560 + 240 + 20 = 2820 求める場合:5040 - 2820 = 2220 通り 帳尻が合ったのはうれしいですが、いずれにせよ、あまりうまい解法ではないですね。 |
|
ネコの住む家
11月23日(木) 13:59:08
MAIL:uchi@sco.bekkoame.ne.jp 28743 |