|
本帖最后由 爱疯 于 2011-11-4 14:44 编辑
- Sub test()
- Dim A, m%, n%, i%, x$, y$
- A = Array(0, 1, 1, 1, 0, 0, 2, 2, 1, 3, 3, 0, 0, 1, 1, 1, 2, 3, 0, 2)
- m = Application.Min(A)
- n = Application.Max(A)
- x = Replace(Join(A), " ", "")
- For i = m To n
- y = y & pd(x, i) & vbLf
- Next i
- MsgBox y
- End Sub
- Function pd(x, i) As String '判断
- Dim regex As Object, matchs As Object, match As Object
- Dim k As Integer, j As Integer
- Set regex = CreateObject("VBScript.RegExp")
- With regex
- .Global = True
- .Pattern = i & "{2,}"
- Set matchs = .Execute(x)
- For Each match In matchs
- j = j + 1
- k = Application.Max(k, Len(match))
- Next
- End With
- pd = i & "的连续最大值为:" & k & ",出现次数:" & j & "次"
- End Function
复制代码 这题有代表性,做了还是发这儿吧,以后好COPY{:011:}
|
|