裏 RjpWiki

Julia ときどき R, Python によるコンピュータプログラム,コンピュータ・サイエンス,統計学

等式を成り立たせよう

2011年11月29日 | ブログラミング

等式を成り立たせよう
さっきのと同じように解ける。ユニークな解は1つだけど。

> library(e1071)
> invisible(apply(permutations(9), 1, function(i) {
+     st <- paste(c("", "/", "", "+", "/", "", "+", "/", ""), i, collapse="", sep="")
+     if (eval(parse(text=st)) == 1) cat(st, "\n")
+ }))
5/34+7/68+9/12
7/68+5/34+9/12
7/68+9/12+5/34
5/34+9/12+7/68
9/12+5/34+7/68
9/12+7/68+5/34

別解

> library(e1071)
> invisible(apply(permutations(9), 1, function(i) {
+     d1 <- i[2]*10+i[3]
+     d2 <- i[5]*10+i[6]
+     d3 <- i[8]*10+i[9]
+     if ((i[1]*d2*d3+i[4]*d1*d3+i[7]*d1*d2)== d1*d2*d3) cat(i, "\n")
+ }))
5 3 4 7 6 8 9 1 2
7 6 8 5 3 4 9 1 2
7 6 8 9 1 2 5 3 4
5 3 4 9 1 2 7 6 8
9 1 2 5 3 4 7 6 8
9 1 2 7 6 8 5 3 4

コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« 式を成り立たせる問題 | トップ | 64 bit integer 登場 »
最新の画像もっと見る

コメントを投稿

ブログラミング」カテゴリの最新記事