« お口の恋人LOTTE ACUO・・・ | メイン | 第37回 スーパーボールXL »

2009年9 月26日 (土曜日)

コメント

y sakuda

とりあえず、回答を投稿

短いのは配列を使うものしか思いつきませんでした。
配列数式で49
{=INDEX(F:F,COUNT(0/SUMIF(C:C,C4+ROW($1:10)))+4)}
同じく48
{=INDEX(F:F,COUNT(MATCH(C4+ROW($1:10),C:C,))+4)}

この二つはRow(A:A)に変えれば2文字へりますが・・・・・
Matchの方を46にすると、マシンのスペックにもよるでしょうが、数分から数十分
ハング状態になります。 お試しあれwww

後は配列使用でCTRL+Shift+Enter不要の53です。
=INDEX(F:F,COUNT(0/FREQUENCY(C:C,C4+ROW($1:10)-1))+3)

配列を使用しないのは、48を配列の変わりに10項目ならべた191
=INDEX(F:F,COUNT(MATCH(C4+10,C:C,),MATCH(C4+9,C:C,),MATCH(C4+8,C:C,),MATCH(C4+7,C:C,),MATCH(C4+6,C:C,),MATCH(C4+5,C:C,),MATCH(C4+4,C:C,),MATCH(C4+3,C:C,),MATCH(C4+2,C:C,),MATCH(C4+1,C:C,))+4)

もう一つ、疑惑の61
=INDEX(F:F,COUNT(0/FREQUENCY(C:C,ROW(INDIRECT(C4&":12"))))+3)
直接1:12を参照してるんじゃないから、配列は使ってないと屁理屈言って見るwww

これから模範解答を拝見しまーーす^^

>そしたら直ぐ後に
>=SMALL(A:A,COUNTIF(A:A,"「これでも出来ます」と、こんな回答が付きました。

>何と言うか、、、情けないやら、哀しいやら。。。

うーーん、、、わかるーーーー
・・・・・・・・
で、呑んだから、、、まだ、、本回答は
しゃぶってませんです。

>FREQUENCY????

あーーーなんだっけーーー
また忘れたのだ、、、

SAKUDAさん、、すごいですーーーー

からくち

>配列は使ってないと屁理屈言って見る
はい、確かに
FREQUENCYだけでも、、、
プラス ROW(-:-) この使い方

y sakuda

からくちさんのやっと分かりました。
リカーシブになってるんだ^^;
唖然として、あっ!やられた!って言う感覚もなく、ただただ感心するばかりです。

ジョー3

> =LARGE(A:A,COUNTIF(A:A,">0"))

これ、しゃぶってみた・・・・
う・・・・・
うんうん、、、するめの味と、甲乙つけがたい。

いい味だなーーーー

y sakuda

実は最初にできたのが↓の71です。
今考えるとなんで、こんなややこしいこと考えたのか良く分からないのですが、式としては気に言ってます^^
=INDEX(F:F,15-FREQUENCY((FREQUENCY(C:C,ROW($2:$11))>0)*ROW($2:$12),C4))

からくち

出題者解答の説明など必要ないでしょうが、、、

対象より1つ大きい数字の称号をVLOOKUPで得て
その1つ下の称号をINDEX(MATCH で拾って来る

従いましてD4に式を入れただけでは、D4は正しい値が得られません
すべてのセルに式を入れて初めて完成です
夫々得た値が、他のセルの参照になるのですから

y sakuda

>出題者解答の説明など必要ないでしょうが、、、
そうでもないです。
解読して納得できるまで、20分もかかったw


からくち

>式としては気に言ってます^^
わたしの場合
良い式か否か、殆ど考えません

好きな式か否か、すごく違いが出ます
もちろん他の人には、その差は分からないでしょうが
でも、、、それでいいと思っています

くまぷー

himiさんから預かった回答です。
--------------------------------

himiです。
普通に思いついたのはこれだけです。思いついただけいいことにしようw
【423文字】
=INDEX(F:F,3+RANK(C4,C:C)-(RANK(C4,C:C)>1)*(MAX(C:C)=LARGE(C:C,2))-(RANK(C4,C:C)>2)*(LARGE(C:C,2)=LARGE(C:C,3))-(RANK(C4,C:C)>3)*(LARGE(C:C,3)=LARGE(C:C,4))-(RANK(C4,C:C)>4)*(LARGE(C:C,4)=LARGE(C:C,5))-(RANK(C4,C:C)>5)*(LARGE(C:C,5)=LARGE(C:C,6))-(RANK(C4,C:C)>6)*(LARGE(C:C,6)=LARGE(C:C,7))-(RANK(C4,C:C)>7)*(LARGE(C:C,7)=LARGE(C:C,8))-(RANK(C4,C:C)>8)*(LARGE(C:C,8)=LARGE(C:C,9))-(RANK(C4,C:C)>9)*(LARGE(C:C,9)=MIN(C:C)))

同じ考えで配列数式【118文字】
=INDEX(F:F,3+RANK(C4,C:C)-SUM((LARGE(C:C,ROW(A:A $1:$9))-LARGE(C:C,ROW(A:A $2:$10))=0)*(RANK(C4,C:C)>ROW(A:A $1:$9))))

やっぱり反則?だったらこちらで133文字
=INDEX(F:F,3+RANK(C4,C:C)-SUM((LARGE(C:C,{1,2,3,4,5,6,7,8,9})-LARGE(C:C,{2,3,4,5,6,7,8,9,10})=0)*(RANK(C4,C:C)>{1,2,3,4,5,6,7,8,9})))

y sakuda

himiさんの、"普通におもいついた"っておっしゃってもよう分からんかった。
自分より上の重複の数を数えてるってことかな?

くまぷー

遅れまして申し訳ありません。

分類が配列になってしまってなんなんですが
これしかありませんので・・・

68:=INDEX(F$4:F13,SUMPRODUCT((C$4:C$13>=C4)/COUNTIF(C$4:C13,C$4:C$13)))

y sakuda

くまぷーさんの、良く見る形なんですが、私はいざとなるとこういうの上手く作れないです^^;

himi

携帯からです。
出題者解答ようやくわかった!あざやかだなあ〜。他の結果を使ったら循環参照になるかなあと思ったけど上手く作れるんですね〜
VLOOKUPの第1引数はRANK(C4,C:C)-1も使えるのかな?試せないので自信薄だけど。
sakudaさんの、なるほどです!こうすれば種類を数えられる〜。
くまぶーさんの気に入ってます。各出目の数をCOUNTIFで数えて合計すると2乗の和で面白いと思ったけど自分ではなんとも使えなかった^^;
私のはsakudaさんのおっしゃる通りです。字数制限も間近で出題意図とは程遠い…^^;

くまぷー

すみません。身内に不幸がありまして
ちょっと顔を出せなくなりますが
よろしくお願いいたします。

次回の問題はsakudaさんのものを
予約投稿しておきます。m(__)m

y sakuda

>すみません。身内に不幸がありまして
>ちょっと顔を出せなくなりますが
大変ですね。
ご苦労さまです。

y sakuda

>出題者解答ようやくわかった!あざやかだなあ〜。他の結果を使ったら循環参照になるかなあと
そうなんですよね。私も解読している時、これ循環にならんのかしら?って思いました^^
でも、要するに、皇帝がきまり、次が決まりで、順次再計算がかかって最後に全部めでたし、めでたしって訳ですw
まあ、とにかく唖然の一言です^^

supermab

>まあ、とにかく唖然の一言です^^

ですね~。(再帰・・・)

探索ソフトを作ってる者として・・・
これに気づかなかったことが、、

ショック☆☆ショック

まいりヤシタ m(_ _)m

ジョー3

今、じっくり式を見つめてみました。

見ればなるほどなーー・・・・と、思いそうになるけど、、、

1)では、自分で一気に書けるか?
2)似た問題を、同様に解けるか?
3)あまりにて無くても、応用できるか?
・・・・・・自信ない。・・・降参です。
からくちさん、、作戦がすぐ、式になるんですねーー凄いです。

supermab

皆さんを、勇気付けるために
素朴なやつも、、、いいかな~?

素朴な235文字:

=OFFSET(F$4,
(COUNTIF(C:C,C4+1)>0)+
(COUNTIF(C:C,C4+2)>0)+
(COUNTIF(C:C,C4+3)>0)+
(COUNTIF(C:C,C4+4)>0)+
(COUNTIF(C:C,C4+5)>0)+
(COUNTIF(C:C,C4+6)>0)+
(COUNTIF(C:C,C4+7)>0)+
(COUNTIF(C:C,C4+8)>0)+
(COUNTIF(C:C,C4+9)>0)+
(COUNTIF(C:C,C4+10)>0),0)

の、配列版63文字

=OFFSET(F$4,SUM(N(COUNTIF(C:C,C4+{1,2,3,4,5,6,7,8,9,10})>0)),0)

ちと、恥ずかしいけど・・・
こんなもんで勘弁してチョ!

y sakuda

supermabさんの私の配列数式と発想同じですね。
CountIFを字数節約のため、SumIFに変え、次に、Trueを数えるだけならと、Falseの所をエラーにして、Countに変更。
さらに、存在する値以外のところはエラーが出れば何でもいいということでMatchに変更。
それで、48までダイエットしました。

y sakuda

そう言えば、ジョー3回答だしてくれないのかな?

jyo3

>そう言えば、ジョー3回答だしてくれないのかな?


う・・・うん・・・・忘れてた。

必要もないだろけど、、、

最初の、ふふふ、、、限定で、、一時トップのころ。・・・

=INDEX(F:F,
(SUMIF(C:C,C4+1)>0)+
(SUMIF(C:C,C4+2)>0)+
(SUMIF(C:C,C4+3)>0)+
(SUMIF(C:C,C4+4)>0)+
(SUMIF(C:C,C4+5)>0)+
(SUMIF(C:C,C4+6)>0)+
(SUMIF(C:C,C4+7)>0)+
(SUMIF(C:C,C4+8)>0)+
(SUMIF(C:C,C4+9)>0)+
(SUMIF(C:C,C4+10)>0)+
4)


あらら、、、、間違ったかも、、、、

過去のは、なくなったから、、

supermab

やっぱり・・・

y sakuda

ジョー3ありがとうございます。
でも、これ214ですが、198とかなんとかおっしゃってませんでした?
無くしちゃったのかな?

jyo-3

あはは、、なんかねーーー

そのあと、、

sumで、、ちょっと短縮した気がする。

・・・・どっかへ、行っちゃった。

っていうか、、、

次々変更しても、、、残してなかった。

からくち

なるほど・・・
10段重ね、、、と言った式か

と言うことは「数字を作る その3」が出題されれば、、、45段重ねの式が見られるのかな

himi

同じ方向でもバリエーションがいろいろあって面白いです〜どこかで応用してみたいなあ…なかなか思い付きそうにないけど(^^ゞ
引き出しを増やすのも難しく、使いこなすのはさらに難しい…

y sakuda

>と言うことは「数字を作る その3」が出題されれば、、、45段重ねの式が見られるのかな
うっ!
また難問になりそう^^;

supermab

>45段重ねの式が見られるのかな

('〇';)グェッ!

jyo-3

>45段重ねの式が見られるのかな

請うご期待・・・・なんちゃって、、、、

おいおい、、、何文字になるんじゃい。

からくち

>おいおい、、、何文字になるんじゃい。
45文字以上でしょう

jyo-3

>45文字以上でしょう
あまーーい・・・・・

きっと、、、

10段がさね、、、

450文字以上は、確実なのだ。。


ん、、、、、
おれが、、、威張ること出来ないかも、、、、、

まあーーーいいか、、、、

ジョー3

>10段がさね、、、
・・・・・
45段がさね、、、、だった。

。。。。。

今日も、のんでるのーーーーだーーれだ、、、

supermab

呑んでますけどwww

でも、今日は呑まないつもりだった・・・
のに、呑んでしまった。。。

アル中かも ^^;;;;;

コメントの確認

コメントのプレビュー

プレビュー中です。コメントはまだ投稿されていません。

処理中...
コメントを投稿できませんでした。エラー:
コメントを投稿しました。 さらにコメントを投稿する

入力された文字と数字は画像と一致していません。再度入力してください。

最後に、下の画像の中に見える文字と数字を入力してください。これはプログラムを使ってコメントを自動的に投稿するのを防ぐために行われています。

画像を読み取れない場合は 別の画像を表示してください。

処理中...

コメントを投稿

アカウント情報

(名前は必須です。メールアドレスは公開されません。)

2024年8 月

        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

TOP メニュー