挟み将棋解答例です。
一番最初に作った式を解答例とします。
195
=LEFT("歩",AND(COUNTA((K11,J10,I9,M13,N14,O15) ($K:$K,$O:$O,$L$11:$N$11,$L$15:$N$15))<2,COUNTA((O9,N10,M11,K13,J14,I15) ($K:$K,$O:$O,$L$11:$N$11,$L$15:$N$15))<2,LEN($K12&$O12)<2,LEN(L$11&L$15)<2))
(minさん)
« 関数で出来ますか~? 第60回 挟み将棋 | メイン | この歌詞訳せますか~? 第42回 タイガー&ドラゴン »
最後に、下の画像の中に見える文字と数字を入力してください。これはプログラムを使ってコメントを自動的に投稿するのを防ぐために行われています。
画像を読み取れない場合は 別の画像を表示してください。
アカウント情報
(名前は必須です。メールアドレスは公開されません。)
日 | 月 | 火 | 水 | 木 | 金 | 土 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
次のような前提で作った式です。
①「と」の代用は1
②「と」はL12:N14のすぐ外側のみ。ただし個数は幾つでも可
(例えばK9なんかには入らない--これ認めると式が少しのびます)
③文字入力版の方は、「と」と入力するようにしても同じなんですが、検証が面倒くさかったので入力が簡単な半角小文字のaにしてあります。
1.1代用版、175
=IF($K12*$O12+L$11*L$15+(SUM((I9,J10,K11,M13,N14,O15) ($L$11:$N$11,$L$15:$N$15,$K:$K,$O:$O))=2)+(SUM((O9,N10,M11,K13,J14,I15) ($L$11:$N$11,$L$15:$N$15,$K:$K,$O:$O))=2),"","歩")
2.文字入力版、191
=IF(OR(L$11&L$15="aa",$K12&$O12="aa",COUNTA((I9,J10,K11,M13,N14,O15) ($L$11:$N$11,$L$15:$N$15,$K:$K,$O:$O))=2,COUNTA((O9,N10,M11,K13,J14,I15) ($L$11:$N$11,$L$15:$N$15,$K:$K,$O:$O))=2),"","歩")
基本的な発想は同じですが、相手が数字じゃないので、Sumとか+が使えないので長くなってます。
私は1セルづつ特定して無理やりやる(つまりIFを重ねる)方法以外だとこれしか循環回避できませんでした。
minさんの出題者解答どんな発想でやってるのか楽しみです。基本的に同じような気もするけど^^
領域演算子の””なんて、ここで何かの問題の時使ったきりなんで、動きと合成領域に使用できる演算と関数が良くわからず、フラストレーション結構たまりました。
なお、($L$11:$N$11,$L$15:$N$15,$K:$K,$O:$O)で
$11:$11,$15:$15,$K:$K,$O:$O としていないのは、領域がクロスしたところにエントリがあると二重に数えられてしまうためです。
y sakuda
投稿情報: くまぷー | 2019年6 月22日 (土曜日) 午後 08時04分
minさんの・・・
>=LEFT("歩",
・・・なんて全然、考えもしませんでした。
凄い発想・・・
投稿情報: くまぷー | 2019年6 月22日 (土曜日) 午後 08時08分
sakudaさんもやはり共通演算子を使った方法でしたか。
今回の問題、関数でできますか?というよりエクセルそのものの問題で、これに気づくかどうかでしたね。
投稿情報: min | 2019年6 月22日 (土曜日) 午後 08時46分
家から持ってきたもの順次貼り付けます。
解答例を短縮
189
=LEFT("歩",MAX(COUNTA((K11,J10,I9,M13,N14,O15) ($K:$K,$O:$O,$L$11:$N$11,$L$15:$N$15)),COUNTA((O9,N10,M11,K13,J14,I15) ($K:$K,$O:$O,$L$11:$N$11,$L$15:$N$15)),LEN($K12&$O12),LEN(L$11&L$15))<2)
177
=LEFT("歩",MAX(COUNTA((K11,J10,I9,M13,N14,O15) (I:$K,$O:O,$L9:$N$11,$L$15:N15)),COUNTA((O9,N10,M11,K13,J14,I15) (I:$K,$O:O,$L9:$N$11,$L$15:N15)),LEN($K12&$O12),LEN(L$11&L$15))<2)
投稿情報: min | 2019年6 月22日 (土曜日) 午後 09時17分
今帰ってきました。くまぷーさんありがとうございます。
やはり、何となくさびしい雰囲気^^;
基本的な発想は同じでしたね。しかし、Leftか・・・・思い付きませんでした。
投稿情報: y sakuda | 2019年6 月22日 (土曜日) 午後 09時33分
これは、文字でも数値でもよく、入力は何個でもよい。
のつもりです。
投稿情報: min | 2019年6 月22日 (土曜日) 午後 09時33分
次
2個入力限定
170
=LEFT("歩",MAX(COUNTA(IF(COUNTA($K:$K,$L$15:$O$15)=1,(O9,N10,M11,K13,J14,I15),(K11,J10,I9,M13,N14,O15)) (I:$K,$O:O,$L9:$N$11,$L$15:$N15)),LEN($K12&$O12),LEN(L$11&L$15))<2)
167
=LEFT("歩",MAX(COUNTA(IF(COUNTA(I:$K,$L$15:O15)=1,(O9,N10,M11,K13,J14,I15),(K11,J10,I9,M13,N14,O15)) (I:$K,$O:O,$L9:$N$11,$L$15:$N15)),LEN($K12&$O12),LEN(L$11&L$15))<2)
166
=LEFT("歩",MAX(COUNTA(IF(COUNTA(I:$K,$L9:O$11)=1,(K11,J10,I9,M13,N14,O15),(O9,N10,M11,K13,J14,I15)) (I:$K,$O:O,$L9:$N$11,$L$15:$N15)),LEN($K12&$O12),LEN(L$11&L$15))<2)
投稿情報: min | 2019年6 月22日 (土曜日) 午後 09時36分
次
1で代用
163
=LEFT("歩",MAX(SUM((K11,J10,I9,M13,N14,O15) (I:$K,$O:O,$L9:$N$11,$L$15:$N15)),SUM((O9,N10,M11,K13,J14,I15) (I:$K,$O:O,$L9:$N$11,$L$15:$N15)),$K12+$O12,L$11+L$15)<2)
投稿情報: min | 2019年6 月22日 (土曜日) 午後 09時38分
次
1で代用、2個入力限定
150
=LEFT("歩",MAX(SUM(IF(SUM(I:$K,$L9:O$11)=1,(K11,J10,I9,M13,N14,O15),(O9,N10,M11,K13,J14,I15)) (I:$K,$O:O,$L9:$N$11,$L$15:$N15)),$K12+$O12,L$11+L$15)<2)
投稿情報: min | 2019年6 月22日 (土曜日) 午後 09時39分
>何となくさびしい雰囲気
確かに、、、
投稿情報: min | 2019年6 月22日 (土曜日) 午後 09時41分
なんだか、minさん沢山作ってますね。
今日はもう頭がぼけてるし、明日朝から出かけちゃうので明日の晩味あわせていただきます。
投稿情報: y sakuda | 2019年6 月22日 (土曜日) 午後 10時40分
maronさんやからくちさんは何処へ行ってしまったのだろうか?
そしてジョー3さんは・・・
投稿情報: くまぷー | 2019年6 月23日 (日曜日) 午前 11時29分
くまぷーさんありがとうございました。
sakudaさんお付き合いいただきありがとうございました。
危うく一人相撲になるところでした。
maronさん、からくちさん
期待はずれの問題で申し訳ありませんでした。
ジョー3さん、忙しいところ顔を出していただきありがとうございました。
次問題を出す機会があれば、もっといい問題にしたいと思います。
ま、当面出す予定はありませんが。
それにしても、よく続きますね。
投稿情報: min | 2019年6 月23日 (日曜日) 午後 12時46分
>期待はずれの問題で申し訳ありませんでした。
◆そんなことはありません、縦横はすぐにできたのですが、
◆斜めにてこずり、解答には至りませんでした
◆簡単にしようとして、泥沼に入ってしまいました
◆こちらこそ、申し訳ありませんでした
maron
投稿情報: maron | 2019年6 月23日 (日曜日) 午後 01時37分
>期待はずれの問題で
そんな事は全くありません
ただ面白い解答が浮かばなかっただけです
最初書いたら200余り
ただ長いだけ、、、
それなら文字数無視して、、、
と書いたら400丁度
これならと思ったら1ヶ所の誤り発見
駄目だ~
>次問題を出す
是非お願いします
出題の難しさは分かっているつもりです
詰まらない問題などありません
投稿情報: からくち | 2019年6 月23日 (日曜日) 午後 05時45分
帰って来て、minさんのちゃんと拝見しました。
基本の発想はまるで同じでしたね。
しかし、2個限定で短くなるって発想なかったです。
二個だろうとなんだろうと同じじゃないかって感覚でそっちは全く掘り下げませんでした。
しかし、私も問題思いつかないな・・・・
やはりジョー3に早く復帰してもらわないとダメですねーー
投稿情報: y sakuda | 2019年6 月23日 (日曜日) 午後 06時21分
>それにしても、よく続きますね。
元祖「関数で出来ますか~?」が第241回まで行きました。
https://kumapooh.typepad.jp/blog/2016/10/%E7%AC%AC240%E5%9B%9E-%E9%96%A2%E6%95%B0%E3%81%A7%E3%81%A7%E3%81%8D%E3%81%BE%E3%81%99%E3%81%8B.html
その後、新シリーズになって60回ですから
合わせれば300を超えたことになります。
投稿情報: くまぷー | 2019年6 月23日 (日曜日) 午後 07時46分
皆様、お世話になりました。
300超えですか!
この先どうなるのやら。
投稿情報: min | 2019年6 月23日 (日曜日) 午後 08時35分
>この先どうなるのやら。
在庫が無いので・・・(^^ゞ
投稿情報: くまぷー | 2019年6 月23日 (日曜日) 午後 10時33分
>在庫が無いので
急いで作りました
よろしくお願いします
投稿情報: からくち | 2019年6 月26日 (水曜日) 午後 07時32分
、、、とても、面白い問題でした
31+100=130近辺で頑張ったけど、、、
あれれ、、、うまくいかない・・・・
うむーーー、、、ってことで、、、
参りました。投了です。
投稿情報: jjj | 2019年6 月26日 (水曜日) 午後 07時37分
>急いで作りました
からくちさん、作問有難うございます。
問題について質問があるのでメールしました。
よろしくお願いします。
投稿情報: くまぷー | 2019年6 月26日 (水曜日) 午後 08時18分
>参りました。投了です。
ジョー3さん、お忙しい所有り難うございます。
お時間ができたら、またよろしくお願いいたします。
投稿情報: くまぷー | 2019年6 月26日 (水曜日) 午後 08時20分
>メールしました。
あれ、、、無いな、、、
投稿情報: からくち | 2019年6 月26日 (水曜日) 午後 08時50分
>>メールしました。
>あれ、、、無いな、、、
では、ここで・・・
>SUM、NPVは使用禁止
・・・ということですが例の中でsumを使っていますが、いいのですか?
><例えば SUM(C3+E3) はOKですが SUM(C3)+E3 はダメ>
><例えば SUM(C3+10) はOKですが SUM(C3)+10 はダメ>
><例えば SUM(C3+E3) はOKですが SUM(C3)+E5 はダメ>
投稿情報: くまぷー | 2019年6 月26日 (水曜日) 午後 08時57分
ダメです
SUMとNPVはそもまま合計をしてしまうので
これを使われると問題になりませんので
またあえて書きませんでしたが
A1+A2+A3+A4+A5+・・・のようなのもダメです
関数を使わないで出来てしまいますので
わざわざ関数を使って足算を足すことが出来る関数以外で解く問題としました
投稿情報: からくち | 2019年6 月26日 (水曜日) 午後 09時04分
>例えば SUM(C3+E3) は
使用禁止なので例として書いてもいいかなと、、、
他の関数で書くとその関数は若しかして、、、
なんて事にならない様に、、、
投稿情報: からくち | 2019年6 月26日 (水曜日) 午後 09時07分
了解しました。
有り難うございます。
投稿情報: くまぷー | 2019年6 月26日 (水曜日) 午後 09時10分
あれ?
繋ぎにやくざな問題作ってたんだけど、もしかして内容的にかぶるかも。
からくちさんの見て関係無さそうなら送ります。
投稿情報: y sakuda | 2019年6 月27日 (木曜日) 午前 11時46分
>やくざな問題
?
送ってみてください。m(__)m
投稿情報: くまぷー | 2019年6 月27日 (木曜日) 午前 11時58分