No.78439 の素朴な疑問の便乗質問です。すでに流れているので改めて質問させてもらいます。
らすかるさん
> 簡単なプログラムを作ればすぐに見つかります。 > 152+483×769=967×384+251 > 173+482×569=965×284+371 > 182+459×763=367×954+281 > (しかもこれらはすべて各辺で1〜9を重複なく使っています)
手っ取り早く済まそうと思い、123456789 の順列をランダムに発生させ、その順列A(と反転した順列B)の数値文字列を3文字ずつ切り出し計算したのですが、2000回ループしても1回もAとBは同じ数値になりません。まぐれで出ると思ったのですが(笑)。
123456789 の順列を abcdefghi で表すと
100a + 10b + c + (100d+10e+f)(100g+10h+i) = (100i+10h+g)(100f+10e+d) + 100c + 10b + a
であり、これを整理すると b が消えて(つまり b は1〜9の何でもよい) a + 101dg + 10dh + 10eg = 101fi + 10ei + 10fh + c という関係式が得られるので、上よりは若干マシと思ってこの条件で2000回ループしましたが、やはり1回も同じ数値になりませんでした。
|
No.78538 - 2021/09/29(Wed) 20:02:54
| ☆ Re: 素朴な疑問の便乗質問 / らすかる | | | 362880通りのうち一致するのが52通りですから、 2000回試行して一致するものが出現する確率は (2000回の順列がすべて異なっていたとして) 1-362828C2000/362880C2000≒25%です。 よって「出ない」方が普通だと思います。 この数字なら、「5000回」にすれば 何か見つかるかも知れませんね。
|
No.78547 - 2021/09/29(Wed) 23:57:06 |
| ☆ Re: 素朴な疑問の便乗質問 / GandB | | | > 簡単なプログラムを作ればすぐに見つかります。 簡単なプログラムであればぜひ教えてください。昨夜いろいろ考えたのですが、いいアイデアが思いつきません。
|
No.78555 - 2021/09/30(Thu) 07:42:33 |
| ☆ Re: 素朴な疑問の便乗質問 / らすかる | | | No.78557 - 2021/09/30(Thu) 08:03:25 |
| ☆ Re: 素朴な疑問の便乗質問 / ganda | | | No.78559 - 2021/09/30(Thu) 09:06:50 |
| ☆ Re: 素朴な疑問の便乗質問 / らすかる | | | ではこちらでどうぞ。 ※見やすくするためにタブを全角スペースに置換していますので、 使用時は全角スペースをタブや半角スペースなどに置き換えて下さい。 ※私が書いた解はこれにa[0]<a[2]かつa[3]<a[6]という条件を追加して 冗長な解を削除したものです。 ------------------------------------------------------------------ #include <stdio.h>
#define N(n) (a[n]*100+a[n+1]*10+a[n+2]) #define R(n) (a[n+2]*100+a[n+1]*10+a[n])
char a[9];
void sub(int n) { int i; char c;
if(n == 8){ if(N(0) + N(3) * N(6) == R(6) * R(3) + R(0)) printf("%d%d%d+%d%d%d×%d%d%d=%d%d%d×%d%d%d+%d%d%d\n", a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7], a[8], a[8], a[7], a[6], a[5], a[4], a[3], a[2], a[1], a[0]); return; } for(i = n; i < 9; ++i){ c = a[i], a[i] = a[n], a[n] = c; sub(n + 1); c = a[i], a[i] = a[n], a[n] = c; } }
int main(void) { int i;
for(i = 0; i < 9; ++i) a[i] = i + 1; sub(0); return 0; }
|
No.78560 - 2021/09/30(Thu) 09:28:40 |
| ☆ Re: 素朴な疑問の便乗質問 / GandB | | | ああ! なるほど!うまいですね。
ありがとうございました。
|
No.78561 - 2021/09/30(Thu) 10:32:51 |
|