三目並べ出題者解答
最短はどちらかが勝ちになるまでは#Valueになるエラー無視の130でした。
{=MID("○×",MAX((CHOOSE(ROW(1:8),B3&C3&D3,B4&C4&D4,B5&C5&D5,B3&B4&B5,C3&C4&C5,D3&D4&D5,B3&C4&D5,D3&C4&B5)={"○○○","×××"})*{1,2}),1)}
これは途中にブランクを表示するよう手当てすると133となります。
最初にやったのはなまじ難しく考えすぎて349にもなりましたw
{=MID(" ○×",SUM((MMULT(IF(B3:D5="○",1,IF(B3:D5="×",0.1,-9)),1^ROW(1:3))={3,0.3})*{1,2},(MMULT(1^COLUMN(A:C),IF(B3:D5="○",1,IF(B3:D5="×",0.1,-9)))={3;0.3})*{1;2},(SUM(IF(COLUMN(B3:D5)=ROW(B3:D5)-1,IF(B3:D5="○",1,IF(B3:D5="×",0.1,-9)),0))={3,0.3})*{1,2},(SUM(IF(COLUMN(B3:D5)+ROW(B3:D5)=7,IF(B3:D5="○",1,IF(B3:D5="×",0.1,-9)),0))={3,0.3})*{1,2})+1,1)}
多少はダイエットできそうですが、やってません。
次にやったのはモロに素朴にやった191
{=IF((B3>0)*(AND(B3=C3:D3)+AND(B3=B4:B5)+AND(B3=C4,B3=D5)),B3,IF(AND(C3=C4:C5,C3>0),C3,IF((D3>0)*(AND(D3=D4:D5)+AND(D3=C4,D3=B5)),D3,IF(AND(B4=C4:D4,B4>0),B4,IF(AND(B5=C5:D5,B5>0),B5,"")))))}
これも作っただけでダイエットはしてません。
(y sakudaさん談)
最近のコメント