いやー何人かのかたが65?
出題者としては想像もつかないです。またまた完敗ですねーー
本当は空いているセルをたどるような手法がかっこいいのですが、断念しました。
で、これは、障害物の位置で通路が開くパターンをあらかじめ用意して置くという
ある意味ズルの手法でやりました。
75です。
{=IF(OR(SUM((B5:D7>0)*{2,3,4}*{1;6;36})={49,103,112,187,196,210}),"○","×")}
この6の冪というのは本来10の冪なんですが、6,7,9の冪では誤判定が起こらないことが
確認できましたので使いました。
5の冪が使えれば、二けたで表示できるパターンが二つ発生しもっと減るのですが、
残念ながら重複が発生してダメでした。 (sakudaさん談)
短いのが書き込まれない内に…
最初99で、一週間何もできず、さっきちょっとやって短くしました。
83=IF(OR(B5&D7>"",(C6>"")*(B6&B7&C7>"")*(C5&D5&D6>""),C5&B6="**",D6&C7="**"),"×","○")
チェック通過済
投稿情報: りす | 2012年2 月 4日 (土曜日) 午後 08時35分
>最初99で、一週間何もできず
結局、99でした(^^ゞ
=IF((B5&D7="")*OR(C5&D5&D6="",B6&B7&C7="",C5&C6&D6="",B6&C6&C7="",C5&C6&C7="",B6&C6&D6=""),"○","×")
投稿情報: くまぷー | 2012年2 月 4日 (土曜日) 午後 08時39分
基本的な考え方は同じでした。
65{=IF(OR(B5&D7>"",C5=B6,D6=C7,C6&0&B6&B7&C7="*0*"&B5:D7),"×","○")}
先ほどちょっと思いついて一文字ダイエット
64=IF(OR(B5&D7>"",C5=B6,C7=D6,C6&LEN(B6&B7&C7)="*"&{1,2}),"×","○")
投稿情報: む印 | 2012年2 月 4日 (土曜日) 午後 09時08分
77その1
'{=IF(OR(SUM({1;8;64}*(B5:D7="")*{1,2,4})={295,457,409,307,403,313}),"○","×")}
77その2
{=IF(OR(SUM((B5:D7="")*{0,1,64;4,8,16;32,2,0})={11,14,28,38,25,81}),"○","×")}
76
{=IF(MOD(20196,SUM((B5:D7="*")*{0,1,2;4,8,16;32,64,0}))+LEN(B5&D7),"x","O")}
69
{=IF(MOD(20196,SUM((B5:D7="*")*{102,1,2;4,8,16;32,64,102})),"×","○")}
投稿情報: ni | 2012年2 月 4日 (土曜日) 午後 09時14分
そうか、>0でいいのか。
だったらもう2文字減りますね。
投稿情報: ni | 2012年2 月 4日 (土曜日) 午後 09時25分
うーーん、niさんのがかろうじて私のに近いですが、69のは理屈と発想が良くわからにですね。
りすさん、くまぷーさん、む印さんのはそういう方向まったく考えなかったとしか言いようがないです。
いろんな手があるもんですねーー
投稿情報: y sakuda | 2012年2 月 4日 (土曜日) 午後 09時54分
わたしの69文字は76文字の変形です。
2のべき乗で数値化して、答えとなるパターンのLCMのMODで0になるものを判定なのですが、B5とD7の判定がうまくいかず、LENでつくろったのが76文字。
力ずくでB5,D7の数値を決めてMODで0になるのを探した結果が69文字です。
投稿情報: ni | 2012年2 月 4日 (土曜日) 午後 10時24分
あれ~~~、、、
その後の扱い方は別として、誰かしら
*10^{8,7,6;5,4,3;2,1,0}
使っていると思ったけど、、、
では、取り敢えず、、、
{=TEXT(SUBSTITUTE(SUM((B5:D7="")*10^{8,7,6;5,4,3;2,1,0}),"001",)-111,"×;;○")}
投稿情報: からくち | 2012年2 月 4日 (土曜日) 午後 10時38分
Substituteは最初使ってましたが、100をはるかに超えました。からくちさんの77は長くなりそうなものいっぱい使ってこの長さってのはごまかされてるような気分^^;
投稿情報: y sakuda | 2012年2 月 4日 (土曜日) 午後 10時43分
携帯からなので詳細はよく見ないとわかりませんが
73{=IF(OR(SUM((B5:D7=0)*{4,3,2}^{1;3;4})={131;119;33;58;421;192}),"○","×")}
みたいなものも作っていました。
このパターンは限界がありそうなので途中でやめてしまいました。
今回の問題は必ず*が4個なので左上と右下は参照しないでもすみました。
投稿情報: min | 2012年2 月 4日 (土曜日) 午後 10時47分
minさんの↓も考え無かった
>*{4,3,2}^{1;3;4})
いろいろ出てくる度に出題者の発想の貧困が明らかにw
投稿情報: y sakuda | 2012年2 月 4日 (土曜日) 午後 10時55分
72{=IF(B5&D7〉""〈OR(C5&D5&D6="",B6&B7&C7="",AND(C5:D6&B6:C7="*")),"○","×")}
こんなのも結構面白いです。
投稿情報: min | 2012年2 月 4日 (土曜日) 午後 11時17分
65{=IF(OR(C5:D6=0)*OR(B6:C7=0)*OR(C5:D6&B6:C7〈〉"*"&B5&D7),"×","○")}
61{=IF(AND(IF(D5=0,,C5:D6)&IF(B7=0,,B6:C7)="*"&B5&D7),"○","×")}
左上と右下を参照しないやつ
50{=IF(OR(IF(D5=0,,C5:D6)=IF(B7=0,,B6:C7)),"×","○")}
48{=IF(OR(IF(D5〉0,C5:D6)=IF(B7〉0,B6:C7)),"×","○")}
〉は半角に直してくださいm(__)m
投稿情報: min | 2012年2 月 4日 (土曜日) 午後 11時27分
minさんの凄いとしかコメントしようがないですねーー
ところで、72が良くわかりません。
72{=IF(B5&D7〉""〈OR(
のところがおかしいと思いますが、全体像がつかめてないので修正できないです。
投稿情報: y sakuda | 2012年2 月 4日 (土曜日) 午後 11時45分
あ・・・・眠ってしまった。・・・・
・・・・・・・・・・・・
みなさんの、、思考の途中・・・で、オワリ。
む印さんに近かったが、、、短く出来ませんでした。
何も出さないのもなんですから、・・・
ただのお遊び
charだけでのお遊び・・・・
=CHAR(((B5&D7&C6="")*(C5<>B6)*(D6<>C7)+(C5&D5&D6&C6>"***")+(B6&C6&C7&B7>"***"))*28+8543)
投稿情報: jyo-3 | 2012年2 月 4日 (土曜日) 午後 11時56分
はて?
チェックが通らないのでしょうか?
短くと思ったら考え方を単純にするように考えます。
いい問題でしたね〜
投稿情報: min | 2012年2 月 4日 (土曜日) 午後 11時57分
minさんの72も48もチェック通りましたが、不思議な式です。
そして解読不能です。解説希望です。
投稿情報: りす | 2012年2 月 5日 (日曜日) 午前 12時05分
携帯からなので解説はきついです。
sakudaさんあたりにお願いできませんか?
明日で良ければ解説しますけど…
投稿情報: min | 2012年2 月 5日 (日曜日) 午前 12時16分
>チェックが通らないのでしょうか?
式の >””< の部分がおかしいのでは?ということです。
りすさん、72もチェック通ったとおっしゃってるから私が分かってないだけ?
>sakudaさんあたりにお願いできませんか?
分からないもの解説しようがないw
投稿情報: y sakuda | 2012年2 月 5日 (日曜日) 午前 12時24分
> 式の >””< の部分がおかしいのでは?ということです。
なぜか、これで通ります。
明日で良いので、是非、解説お願いします。
投稿情報: りす | 2012年2 月 5日 (日曜日) 午前 12時28分
ては明日の夜にでも
その間にどなたかが解説してくれればそれもあり
sakudaさん
〈と
〉は
半角記号に直してもだめですか?
投稿情報: min | 2012年2 月 5日 (日曜日) 午前 12時39分
>半角記号に直してもだめですか?
失礼、さっきはやり損ねてたみたいです。
見た目異様ですが↓の意味見たいですね
=IF((B5&D7>"") まあ、確かに順番間違えなければ良いわけですが、普通論理値の大小比較なんてのは考えないw
まいりました。
投稿情報: y sakuda | 2012年2 月 5日 (日曜日) 午前 01時38分
やり損ねたので再掲します。
{=IF((B5&D7>"")<OR(C5&D5&D6="",B6&B7&C7="",AND(C5:D6&B6:C7="*")),"○","×")}
投稿情報: y sakuda | 2012年2 月 5日 (日曜日) 午前 01時41分
皆さんの短縮、、、凄ですね
文字数を問わなければ、こん様な組み立て方が好みですが・・・
{=TEXT(MOD(40392,BIN2DEC(SUM(LEN(B5:D7)*10^{8,7,6;5,4,3;2,1,0})))+LEN(B5&D7),"×;;○")}
この式に40392( LCM )を使ってます
投稿情報: からくち | 2012年2 月 5日 (日曜日) 午前 09時06分
40392はそういう意味ですか。
niさんの20196と同じ発想みたいですねーー
投稿情報: y sakuda | 2012年2 月 5日 (日曜日) 午前 10時32分
論理値の大小比較なんですね?
さらに、括弧省略?
投稿情報: りす | 2012年2 月 5日 (日曜日) 午前 11時52分
>論理値の大小比較なんですね?
言われて見れば式ですから、括弧省略しても問題ないし、論理値の大小比較も問題ないでしょうが・・・・普通そんなこと考えない^^;
この問題出題者としては9割方滑っちゃうとおもってたんですが、思いのほか好評でしたね^^
ただ・・・・例によって出題者完敗の巻でしたw
投稿情報: y sakuda | 2012年2 月 5日 (日曜日) 午後 12時02分
>左上と右下を参照しないやつ
私も少し頑張ったが,,駄目だった。
ありそうでなかった。・・・いい手、、
48、50は・・・・むむーーー、、すぐにはぴんとこない。
投稿情報: ジョー3 | 2012年2 月 5日 (日曜日) 午後 12時04分
>すぐにはぴんとこない。
*を並べてみて・・・・
ようやく48が分かった。。。
そかそか、、、その規則性は、、、
お風呂のタイルとかが・・・・よさそう、、、、
・・・・・・・・・・・・
なんか、似たこと、あったなーーー。・・・・
・・・・・・・・・・
忘れたーーーー、、、けど、、
投稿情報: ジョー3 | 2012年2 月 5日 (日曜日) 午後 03時05分
>論理値の大小比較なんですね
一応約束ですので、、
もうすでにおわかりとおもいますが、解説してみます。
=TRUE<TRUEの結果はFALSE
=TRUE<FALSEの結果はFALSE
で
=FALSE<TRUEの結果はTRUE
=FALSE<FALSEの結果はFALSE
です。
つまり、
式の左辺がTRUEの時は、右辺がTRUEでもFALSEでも結果はFALSE
式の左辺がFALSEの時は、右辺がTRUEであればそのままTRUE、FALSEであればそのままFALSE
となります。
したがって、
{=IF(B5&D7>""<OR(C5&D5&D6="",B6&B7&C7="",AND(C5:D6&B6:C7="*")),"○","×")}
は右上のセルと左上のセルをつなげたものが空白でなかったら式の結果は必ずFALSEになります。
なお、「B5&D7>""<OR(・・・」は「(B5&D7>"")<OR(・・・」でも同じですが、
左側から計算をしますので、カッコは不要となります。
ちょっと適当ですが、この程度で勘弁してください。
蛇足ですが、エクセルのワークシート上では
TRUE<FALSEはFALSEとなりますが、
VB(VBA)では
TRUE<FALSEはTRUE
と逆の結果になりますので注意が必要です。
何の飾り気もないコードですが、、ご参考まで
Sub test()
Dim i
i = True < False
MsgBox i
End Sub
Sub test2()
Dim i As Integer
i = True < False
MsgBox i
End Sub
投稿情報: min | 2012年2 月 6日 (月曜日) 午前 01時01分
50{=IF(OR(IF(D5=0,,C5:D6)=IF(B7=0,,B6:C7)),"×","○")}
についてもみなさんおわかりとおもいますが、
昼寝したら寝れなくなったので、一応解説します。
今回の問題は*が必ず4個
また、右上左下は必ず空いている必要があります。
したがって、下の図の■を除いた部分に、*を通れるように4個配置されていればよいということになります。
_BCD
5■□□
6□□□
7□□■
通れるパタンのうち4つのパタンは、必ず左下(B7)と右上(D5)が*であり、かつ
AND(C5:D6<> B6:C7)=TRUEの条件が成り立ちます。
逆の書き方をするとOR(C5:D6=B6:C7)=FALSEです。
残りの2つのパタンのうちの1つは
D5が空白で、B6:C7はすべて空白じゃないという条件が成り立ち、式に書くと
OR(IF(D5=0,, C5:D6)= B6:C7)=FALSEが成り立ちます。
残り1つは前の例と反対ですから、同じように
OR(C5:D6)=IF(B7=0,,B6:C7)=FALSEである必要があります。
50は上記の条件を合体したものです。
簡単ですがこんなのでご勘弁を。。
投稿情報: min | 2012年2 月 6日 (月曜日) 午前 01時56分
とにかく50アンダーには参りました・・・・・
投稿情報: y sakuda | 2012年2 月 6日 (月曜日) 午前 07時53分
暦問題で、頭を使って・・・・
今回は休めそうだったが、、、休めなかった。
・・・・・・
100ぐらいと聞いて、、、
すぐ、、、80,、、あとは、、、ゆっくり、、、との予定が、、、
・・・・・・・・・・・
次はどうだろう。
投稿情報: ジョー3 | 2012年2 月 6日 (月曜日) 午前 08時36分
次は本来はジョー3の題名だけのやつでは?w
投稿情報: y sakuda | 2012年2 月 6日 (月曜日) 午前 09時33分
>次は本来はジョー3の題名だけのやつでは?w
あーーーーーーーハハ・・・・・・・
・・・・・・・・・・・・
最初考えたのは、あまりにも、簡単すぎた。
・・・で、、、いま、改作中。
でも、でも、、、簡単過ぎもたまに、、良いかなーー。
投稿情報: ジョー3 | 2012年2 月 6日 (月曜日) 午後 01時27分
>簡単過ぎもたまに、、良いかなーー。
よろしいのでは?
む印さんが送っているのがどうなのかは分かりませんが、私が預けてあるのは少なくとも秒殺には絶対ならないと思う^^
投稿情報: y sakuda | 2012年2 月 6日 (月曜日) 午後 03時19分
>少なくとも秒殺には絶対ならないと思う^^
またまた、、、2W・・・・も、、、いいかも、、、
忙しい方も参加できる確率が高くなる
投稿情報: ジョー3 | 2012年2 月 6日 (月曜日) 午後 04時19分
>簡単過ぎもたまに、、良いかなーー。
いいと思いますよ~
難しいのはつらいです~
>む印さんが送っているのがどうなのかは分かりませんが、
次回はむ印さんから問題です。(o^^o)
投稿情報: くまぷー | 2012年2 月 6日 (月曜日) 午後 05時58分
>次回はむ印さんから問題です。(o^^o)
うれしいです。私の問題が二回続くと私としてはちっとも面白くないw
投稿情報: y sakuda | 2012年2 月 6日 (月曜日) 午後 06時18分
minさんの48
やっと拝見できました。
一目見てなんとか理解は出来ましたが、
こんなスパイラルな式を組み立てるには
私のように二次元的発想では到底無理ですねぇ~、、
これが閃いたときはさぞかし気持ちよかったことでしょう^^
>次回はむ印さんから問題です。(o^^o)
おっ、早くも使って貰えるんですかぁ~
最近はなかなか顔を出せないことが多いですが
皆様、よろしくお願いします。
投稿情報: む印 | 2012年2 月 7日 (火曜日) 午後 01時48分
minさん、解説ありがとうございます。
なんとなく理解できました。
真似はできませんw
投稿情報: りす | 2012年2 月 8日 (水曜日) 午前 10時58分
46{=IF(OR(D5>C5:D6=(B7>B6:C7=(D5=B7))),"×","○")}
絶対に短くする手があるはずと思っていましたが、
何とか短くする手が見つかりました。
たった2文字減らすのに1週間かかってしまいました。。
これでゆっくり寝れます。
投稿情報: min | 2012年2 月12日 (日曜日) 午後 10時55分
46??
物凄いとしか言いようがないです^^;
投稿情報: y sakuda | 2012年2 月12日 (日曜日) 午後 11時19分