« 第59問 整序問題 | メイン | 予告 今夜 第60回です。 »

2010年5 月22日 (土曜日)

コメント

min

少数あり、桁数制限なし
くまぷーさんにメールしたあとで
少し短くしたので
121
{=INDEX(A:A,MATCH(ROW()-(A3<"")*SUM(N(A$2:A$12=C3),-(C3:C$12=C3)),MMULT(H1:S1+1,N(0&A$1:A$12<=0&TRANSPOSE(A$1:A$12))),))}

kir

少数なし・作業列なし・3桁まで
82:{=SUBSTITUTE(SMALL(LEFT(A$2:A$11&0&0,3)+LEN(A$2:A$11)/10,row(A1)),".","e+0")/1000}
72:{=MOD(SMALL((A$2:A$11&"e-0"&LEN(A$2:A$11))*10^6+A$2:A$11,ROW(A1)),1000)}

作業列ありはMINさんと一緒
39:{SUM(N(0&A$2:A$11<0&A2),N(A$1:A2=A2))}
31::INDEX(A:A,MATCH(ROW()-1,B:B,))

からくち

あらあら、、、まだまだ、、、
では、究極の超違反を

=0&A2・・・(5文字)

・これをC11まで
・C2:C11をコピー
・C2:C11に形式を選択して貼付けで値のみ貼付け
・昇順で並び替え
・B2をコピー
・C2:C11に形式を選択して貼付けで加算

min

kirさん
>作業列ありはMINさんと一緒
だと思いました。
0&0、、、芸が細かい。。
"e+0"、、絶対に思いつかない。。
マイナスは使用禁止版かあ。

min

かずさん、通りすがりさん
出てこないなあ~。

かず

ども~っ、出掛けてて、先程もどりました。
今回も最初に思い付いたものから、微動だにしませんでした。

桁数限定・作業列を使って…
{=SMALL(A$2:A$11*10^(9-LEN(A$2:A$11))+LEN(A$2:A$11)/10,ROW(A1))}
=--LEFT(B2,RIGHT(B2,1))
の、計89文字でした。

y sakuda

今帰ってきました。
出題者解答もまだ見てませんが、取り合えず・・・・
58
{=MOD(SMALL(LEFT(A$2:A$11*10^5,6)+A$2:A$11,ROW(A1)),10^3)}

む印

こんばんはぁ~

今回、私のはどれもまともなのものはありませんが、、、

ファイルの例題限定42

{=--MID(LARGE(-(0.1&A2:A11),ROW()-1),5,9)}
 
 
数字が多いとだめな54と67

{=--RIGHT(SMALL(LEFT(A2:A11*10^11,11)+A2:A11,ROW()-1),8)}

{=INDEX(A:A,RIGHT(SMALL(LEFT(A2:A11*10^9,7)+ROW(2:11),ROW()-1),2))}
 
 
84をだいぶ修正してできた103
{=INDEX(A:A,RIGHT(SMALL(MMULT(N(TRANSPOSE(A2:A11&0)<=A2:A11&0),
ROW(1:10)^0)*100+ROW(2:11),ROW()-1),2))}

(すべて、C2:C11を選択してCtrl+Shift+Enterです。)

からくち

>ROW(A1)
>ROW()-1
う~~ん、何かもったいない
と言うことで、、、提示例のみの式
{=MID(LARGE(-(0.1&A$2:A$12),ROW()),5,3)*1}
これなら2文字減


違反?かな、、、版
D2=A2&"!"
B2=COUNTIF(D:D,"<"&D2)
C2=INDEX(A:A,MATCH(SMALL(B:B,ROW()),B:B,))

えっ!正しい値が得られないって
チャンと式を見ましたか
この式、、、D列はD13まで、B列はB12まで
コピーです

y sakuda

なんか、やらなくなってから時間たち過ぎて、皆さんのパット見じゃ理解できない^^;
明日もちょっと忙しいので後日ゆっくり鑑賞します^^

む印

>{=MID(LARGE(-(0.1&A$2:A$12),ROW()),5,3)*1}
ああ、、なるほどっd

>D2=A2&"!"
>D列はD13まで、B列はB12まで
へぇ~~~!
こんな方法があるんですねー
面白いなぁ~d^^b

通りすがり

ファイルの例題限定(0がなければw)
56:{=SUBSTITUTE(SMALL(LEFT(A$2:A$11*100,3)*1,ROW(A1)),0,)*1}

小数OK・桁数限定
94:{=INDEX(A:A,MOD(SMALL(LEFT(A$2:A$11*10^9,6)+LEN(INT(A$2:A$11))*100+ROW($2:$11),ROW(A1)),100))}

きっちー

ちょっといじりました。
昔のやり方だねぇ。

基本的に配列数式を使ってない方式ではここまででした。
作業列あり整数のみ

例題用0あり
("."&A2)*10^4+LEN(A2)
21
INDEX(A:A,MATCH(SMALL(B:B,ROW()-1),B:B,))
41

汎用(オプションで増やせる?)
A列だけでなく他の列もひろえる
("."&A2)*10^16+ROW()+LEN(A2)/100
32
INDEX(A:A,MATCH(SMALL(B:B,ROW()-1),B:B,))
41


C列がひねられない・・・。

jyo3

みなさん、すごいですね、、、

夕べ、
1、発表時間前・・・ちょっと横になるかーーー
2、目覚めたら、、、3時だった、
・・・・・疲れてたのかーーーー、、

で、、、

Jyo3

>>D2=A2&"!"
>面白いなぁ~d^^b
×2
 

あそんだこと、、(といたといえない)
0.1 a0.1
0.2 a0.2
1 a1
1.11 a1.11
2 a2
2.2 a2.2
11 a11
11.1 a11.1
22 a22
111 a111
b2に  ="a"&A2
b列並べ替え
0.1 a0.1
0.2 a0.2
1 a1
1.11 a1.11
11 a11
11.1 a11.1
111 a111
2 a2
2.2 a2.2
22 a22

くまぷー

久々に来たけれど中間試験の
採点処理で超多忙モード・・・(T.T)

それにしてもいろいろな考えがあるもんだ・・・

min

む印さんの103の怪しさがやっとわかった。
自分の121は間違いだった。

やっぱりこの問題は私には難しい。。

・小数点あり
 →有効桁数15をめいっぱい使用した値も考慮?
  →+LEN()とかの仕込みが出来なくなる

という事で作業列なしは早々に見切りをつけちゃいました。
・マイナス値
これは考えて無かったです。すみません。
作業列のやつだと変な結果になりますね。何でだろう?よく分かんないなあ。
また合間に考えてみようかな。
 

む印

>自分の121は間違いだった。
えっ?、そうですかねぇ~?

私の103は「0」をくっ付けるところで間違ってますね、、、、
 N(TRANSPOSE(A2:A11&0)<=A2:A11&0)

minさんのように
 N(TRANSPOSE(0&A2:A11)<=0&A2:A11)
でマシになるのかな・・・^^;

ジョー3

マイナス値

ソート優先か?
a1
a11
a2
a22
a0.1
a0.11

などは、、、思ったとおり、、、
しかし、、、
マイナス値は、、
minさんが、質問のように、、
マイナス軍団として、、固まりそうで、固まらない、、、、

ってことを、、問題提起かなーーー
って、、、思ってました。。。

min

>マイナス軍団として、、固まりそうで、固まらない、、、、
>ってことを、、問題提起かなーーー
問題作成のきっかけは、
ジョー3さんのおっしゃる通りですが、
「-」とか「.」とかの動きがよくわかりません。

>>自分の121は間違いだった。
>えっ?、そうですかねぇ~?
間違いですね。

>でマシになるのかな・・・^^;
ましになるかどうかわかりませんが、
0&と&0の結果は違うみたいですね。

min

む印さんの103をいまさらながら短くしてみました。
{=INDEX(A:A,RIGHT(SMALL(MMULT(N(TRANSPOSE(A1:A11&0)<=A1:A11&0),O1:O11+1)/1%+ROW(2:12),ROW()),2))}
マイナス6文字、、あっているか??
っていうかなんか最近すぐにちょっと前のことがよくわからなくなる。

コメントの確認

コメントのプレビュー

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

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

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

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

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

処理中...

コメントを投稿

アカウント情報

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

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 メニュー