過去ログ

???
5色全部を使う場合は,2400通り。Excelのマクロ。
Option Explicit : Dim a(7) As Integer
Sub Macro2()
Cells(1, 1).Value = 0
Call saiki(1)
End Sub
Sub saiki(ByVal n As Integer)
Dim b(5) As Integer
Dim dame As Integer, j As Integer
a(n) = 1
While a(n) <= 5
Select Case n
Case 1 : dame = 0
Case 6 : dame = -(a(1) = a(6) Or a(5) = a(6))
Case 7 : dame = -(a(1) = a(7) Or a(2) = a(7) Or a(3) = a(7) Or a(4) = a(7) Or a(5) = a(7) Or a(6) = a(7))
Case Else : dame = -(a(n - 1) = a(n))
End Select
If dame = 0 Then
If n < 7 Then
Call saiki(n + 1)
Else
For j = 0 To 5 : b(j) = 0 : Next j
For j = 1 To 7 : b(a(j)) = 1 : Next j
For j = 1 To 5 : b(0) = b(0) + b(j) : Next j
If b(0) = 5 Then
Cells(1, 1).Value = Cells(1, 1).Value + 1
For j = 1 To 7 : Cells(Cells(1, 1).Value, j + 1).Value = a(j) : Next j
End If
End If
End If
a(n) = a(n) + 1
Wend
End Sub
   12月26日(金) 9:22:01     42773

過去問題一覧へ戻る