Imports System.
IO
Imports System.Text.RegularExpressions
Namespace Challenges
Public Class Communicator
Property StdIn As TextReader
Property StdOut As TextWriter
Sub New()
End Sub
Sub New(i As TextReader, o As TextWriter)
StdIn = i
StdOut = o
End Sub
Sub WriteOutputTextLine(s As String)
If Not StdOut Is Nothing Then StdOut.WriteLine(s)
End Sub
Function GetInputTextLine() As Object
If Not StdIn Is Nothing Then Return StdIn.ReadLine
Return Nothing
End Function
End Class
Public Class Codingame
Private _Communicator As Communicator
Sub New(c As Communicator)
_Communicator = c
End Sub
'HackerRank Challenges
Function TheDescent() As Integer
Dim mIndex(1) As Integer
While True
For i As Integer = 0 To 2
Dim mountainH As Integer
mountainH = _Communicator.GetInputTextLine()
If mIndex(1) < mountainH Then mIndex = New Integer() {i,
mountainH}
Next
_Communicator.WriteOutputTextLine(String.Format("The mountain at
index '{0}' as the highest mountain height of {1}", {mIndex(0), mIndex(1)}))
End While
Return mIndex(0)
End Function
End Class
Public Class HackerRank
Private _Communicator As Communicator
Sub New(c As Communicator)
_Communicator = c
End Sub
Sub TestRepeaters()
_Communicator.WriteOutputTextLine("Changes: " &
RepeatingChars(_Communicator.GetInputTextLine))
End Sub
'HackerRank Challenge
Function RepeatingChars(cfg As String) As Integer
Dim curChar As Char = String.Empty, counter As Integer
For i As Integer = 0 To cfg.Length - 1
If Not curChar = cfg(i) Then
counter += 1
curChar = cfg(i)
End If
Next
Return counter
End Function
Sub GetConvertedDateTime()
Dim dt = DateAndTime.TimeValue(_Communicator.GetInputTextLine)
_Communicator.WriteOutputTextLine("Converted Time: " &
dt.ToString("HH:mm:ss"))
End Sub
'HackerRank Challenge
Sub TheAngryProfessor()
Dim cfg As String = _Communicator.GetInputTextLine, times As String =
_Communicator.GetInputTextLine
_TheAngryProfessor(1, cfg, times)
End Sub
Private Sub _TheAngryProfessor(id As Integer, cfg As String, times As String)
Dim c As String() = cfg.Split(" ")
Dim NumberOfStudents = Integer.Parse(c(0))
Dim CancelThreshold = Integer.Parse(c(1))
For Each s As String In times.Split(" ")
If Integer.Parse(s) >= 0 Then CancelThreshold -= 1
If CancelThreshold < 1 Then
_Communicator.WriteOutputTextLine("NO-" & id)
Exit Sub
End If
Next
_Communicator.WriteOutputTextLine("YES-" & id)
End Sub
Sub TestTheAngryProfessor()
'_TheAngryProfessor(1, "500 89", "46 -84 39 58 21 -22 21 -4 -93 -95 27 -73 -14 -
9 33 36 -87 64 97 94 8 -25 -90 -56 -92 45 23 -61 28 -96 -91 -93 53 -56 79 73 -71 21 -79 -96 33 44 -13 -99 -
80 -54 -80 -1 4 -88 12 -75 -11 97 -78 -67 -87 -72 68 -45 -71 72 -47 37 35 88 -39 -35 -64 98 25 -9 -76 17 57
-45 63 84 44 -66 -99 31 -22 46 50 84 -61 -92 -27 85 -25 -17 1 -2 -75 -76 75 -69 -77 -39 -11 -7 17 -61 13 -33
30 -30 -4 -76 -6 58 -64 -83 -95 21 98 31 -31 63 -91 -87 0 52 7 40 -37 46 -29 -94 56 -83 99 73 -6 28 85 -71 -
89 94 56 9 -36 46 -41 -90 -12 -55 87 43 -69 -95 42 -92 43 28 -24 45 50 -25 -36 -93 -40 61 -81 77 31 56 -39
57 86 34 28 -22 22 69 -15 60 15 -87 77 98 89 33 55 -15 -29 -4 -80 87 26 65 71 -50 46 -34 -6 87 -38 -27 -16
39 -43 -54 -21 -30 1 -42 73 62 -85 99 -32 90 -59 68 -12 -72 2 83 71 -76 -61 97 66 57 -8 99 -43 -16 11 30 44
84 85 -26 33 81 76 -32 43 -98 -46 -96 -38 95 49 -78 -32 95 -81 25 28 -12 -90 51 -34 -36 98 -73 -97 91 46 -
43 83 -47 65 35 -31 -50 -92 6 3 -10 76 -91 -51 72 -3 -79 58 6 -3 -69 41 -8 -25 11 -9 -83 -56 11 -60 -9 -50 5 -
19 -84 5 -8 25 31 83 31 15 30 -92 -82 76 -19 32 39 -88 25 -29 -91 50 9 -16 29 -59 -6 -52 56 32 -11 52 19
26 85 77 66 -50 -16 68 1 -57 -78 99 42 -62 -51 56 6 66 -42 19 -27 -84 87 42 31 -51 61 96 86 57 -76 -12 48
77 78 51 65 2 40 96 95 -34 -50 61 45 29 -36 -60 24 -26 34 12 -66 56 62 82 52 67 3 42 50 -73 65 -70 -71 -
95 -27 8 -26 55 -21 99 -58 79 -46 -61 44 -83 -20 -2 -54 0 -10 -78 25 77 76 23 94 48 75 -37 96 81 -77 12 34
-65 74 32 -82 50 90 -44 -28 25 -54 75 34 -23 45 96 -1 -27 -9 -78 -73 1 6 49 90 41 89 -51 -78 39 -62 -54 -1 -
42 44 -54 1 -34 -5 -45 61 -96 56 -78 22 -9 57 -52 48 68 15 14 -82 28 -83 87 -13 99 -83 -7 -99 94 83 66 -92
27 61 29 -90 -34 83 23 10 69 -4 51 -44")
'_TheAngryProfessor(2, "500 198", "-29 87 -90 -28 28 -74 62 73 27 46 91 -6 42 -
64 -24 86 -6 72 73 -80 28 -44 59 -26 -91 41 -68 -7 60 -54 67 41 66 -22 66 -46 -10 85 -11 60 -40 -42 48 -71
72 -96 17 -66 3 76 -43 16 -16 27 -70 -82 41 71 -25 2 71 90 88 24 -96 64 26 -45 87 70 -64 19 -81 46 88 4 -
99 0 -2 82 -77 91 -31 98 13 75 -24 -82 -89 64 29 37 67 -19 -66 -20 -3 -50 0 53 -20 -90 -76 2 -4 95 -39 -17
74 75 93 87 -59 32 -90 -72 -66 60 90 12 -33 -32 44 78 -90 -63 5 -81 -93 -76 -2 -98 -15 67 77 -5 39 -34 -91
6 21 66 -73 -92 64 5 69 39 -66 -95 -86 5 -89 -13 -3 -63 -41 -52 80 84 16 62 46 23 61 8 -70 -77 -5 40 13 -85
-36 -73 85 12 0 -40 81 -62 85 93 -88 14 -16 -53 62 -89 -80 19 72 72 63 74 27 -38 11 -19 -6 -44 92 4 -89 -58
-8 -39 13 -9 75 -72 72 18 46 -87 23 26 -82 -74 -24 44 14 17 -47 56 -9 77 43 70 -85 -45 93 -28 -2 50 -87 -63
-31 80 58 1 17 -54 27 53 85 73 -21 -6 55 -55 4 47 -3 13 -16 -81 -98 -49 -63 41 -52 32 67 2 -47 -69 -31 -38
45 48 -71 -51 -69 50 55 -85 -58 -85 -8 -52 -48 59 91 -66 53 1 48 97 -5 -5 91 -71 -60 -78 48 -28 -5 -29 88 -
84 14 -18 42 35 -67 59 83 59 43 16 21 41 35 74 69 18 -95 49 -56 36 77 -82 82 8 -32 -69 -73 31 -84 -85 15 -
93 39 -52 79 72 88 69 0 -47 54 -89 79 89 29 74 77 -59 62 -16 3 2 -47 -65 -1 -84 -82 -35 -98 81 -50 -76 -75 -
48 -50 83 -57 49 9 3 79 -70 -65 -75 -34 94 64 16 -9 80 -32 69 -54 93 -32 -78 88 25 -57 20 -9 -28 -89 16 -12
14 64 -34 53 -34 28 50 -12 -22 -80 -13 -62 -66 -89 6 -82 -97 -56 -17 63 -48 -15 60 -29 -1 -30 50 59 99 2 53
-79 84 -86 -49 -57 -44 51 -4 -92 -90 23 -18 13 -34 23 -5 41 -94 -94 -32 -45 -76 34 29 89 0 17 46 35 98 -19 -
65 44 -44 -7 42 5 52 -2 17 -6 -55 -35 -53 -81 82 7 -17 59 -43 89 -70 -8 38 56 54 73 -37 -11 -32 47 97 65 58
27 -42 39 15 -39 9 -62 -62 -73 -48")
'_TheAngryProfessor(3, "500 85", "89 77 64 -54 22 35 -99 -58 90 7 78 -52 96 -66
98 -12 -49 35 -85 6 50 -3 -44 -47 -78 77 77 -26 -36 -57 96 74 -12 -63 -3 -9 -14 54 26 -97 60 64 -7 -15 88 78
94 81 66 56 -65 -27 -30 -90 35 -12 -14 84 -19 -17 -24 91 52 -77 21 -44 -2 -18 4 40 -48 86 81 -35 74 -60 1 -
69 -80 28 35 89 -43 -22 -20 39 19 -82 0 -4 -74 77 -20 33 96 -2 -85 -21 55 -79 -61 95 48 -84 98 -27 -5 0 -3 -
78 98 35 -76 63 -55 -6 -13 -1 -82 14 75 -53 98 6 91 6 16 -73 54 -75 -84 -30 -86 63 18 -49 -70 25 -60 -23 19
-42 26 -32 56 94 41 90 8 -48 82 -75 4 -73 36 68 77 96 82 88 36 31 59 -10 -30 50 12 -16 78 84 -38 -23 19 -
24 -47 92 47 -18 0 77 90 -94 5 22 -4 -50 -12 -63 -44 -85 51 -80 4 8 78 34 17 75 90 -58 -4 90 34 -52 44 -22 -
66 98 52 74 44 3 88 36 75 77 7 0 -24 23 93 68 -52 81 -24 -87 -19 35 -68 -42 70 -28 -91 22 -85 -88 43 90 26
-1 83 23 31 14 -34 47 27 -85 56 -86 -4 71 86 -44 89 -66 89 78 52 72 48 -94 47 -46 -38 48 -62 -91 37 -12 36
-50 -21 98 -73 12 -93 1 38 47 84 -19 -19 47 49 34 -91 63 16 -37 -35 -15 60 21 16 26 -68 52 -60 -47 63 -99
69 18 -27 27 9 43 -62 19 -84 84 96 91 91 18 -71 13 84 78 92 -78 -51 -23 -85 96 40 22 20 45 4 -71 85 68 68
86 55 14 86 -24 -83 93 53 12 -34 -89 73 66 97 -80 -33 78 -83 51 -33 -40 48 92 -54 -78 66 78 -80 -2 -32 95 -
53 -10 21 5 89 -74 -83 -94 -76 -77 45 86 -53 55 -22 6 -75 -63 31 54 66 14 -47 91 -33 18 76 56 -96 -70 13 -
98 46 -88 -30 1 70 -49 24 93 -61 -40 -19 71 -59 -86 70 64 97 97 -94 -27 66 -34 21 52 43 24 -40 -30 -88 75 -
4 -31 43 -81 -80 -57 38 41 -24 -46 -89 82 -17 -84 -33 -68 2 92 -81 -86 -82 -11 87 84 -49 31 52 -23 -82 -78
18 -58 51 17 23 -45 51 30 13 2 48 -57 2 21 -40 5 51 -83 13 86 60 -94 -91 -1 91 -23 92 92 -12 84 18 -15 -4
23 -54 -5 44 25 -29 -96 34 -64")
'_TheAngryProfessor(4, "500 328", "63 -58 41 -87 3 -37 91 77 42 -35 -62 77 -49
99 99 2 -31 35 59 38 11 -34 73 -12 -45 49 -62 42 -75 91 50 -41 53 58 50 -74 -24 16 24 17 -28 28 -45 -6 17
98 -43 53 -68 61 -61 32 -48 35 81 -93 -71 4 45 -92 61 -81 35 -53 -47 -74 7 -45 -59 -80 86 -54 -95 30 21 2
65 39 19 56 63 78 93 -26 -8 97 79 -56 -62 67 -60 18 58 -78 -53 99 -21 -87 4 -71 -23 -59 -24 -82 53 -70 75
92 -97 62 61 -19 90 0 -24 60 45 -3 -87 -8 38 6 70 99 -73 21 75 -20 52 65 44 -28 -44 -63 -72 -24 -5 77 -33
46 42 -92 64 88 84 -49 -78 -74 13 -58 -12 48 -16 -96 -6 7 14 -18 15 99 11 33 -77 -16 49 76 -60 31 2 -78 74
-8 37 -70 37 -56 -69 -42 -1 89 36 -63 42 25 74 -4 40 88 -43 34 -80 34 -84 0 -87 87 -7 24 -45 -45 -4 -19 66 -
74 -69 42 -2 3 5 -71 97 19 -61 -6 44 77 53 45 -7 -81 31 -30 -4 -20 -40 -53 54 95 -68 -73 53 13 -50 30 -29 -
89 39 -93 -4 -4 -61 -35 -33 82 -83 -18 -9 -48 -41 20 46 -82 -81 -32 -45 34 97 -73 55 -36 -62 28 -89 82 58 4
15 41 65 -86 61 68 46 -41 -48 -92 83 33 48 -6 -21 63 -48 -85 -30 -28 48 2 94 -47 72 57 -12 31 -58 -20 -99 -
68 -92 65 -81 -71 -45 -75 -69 -82 -67 -53 -81 92 -74 71 -52 -21 97 71 -83 60 68 68 -15 34 93 -65 72 66 74 -
71 80 75 30 61 -93 -42 -61 2 64 62 -76 31 38 -98 38 -43 -14 1 16 62 -35 74 -18 77 17 39 -68 93 24 -70 12 -
85 83 75 0 -13 93 37 -16 45 -6 78 58 -32 66 -97 -20 61 69 8 -25 -9 13 81 13 15 -62 46 -69 3 85 19 83 14 69
25 47 -65 -85 43 25 70 -56 8 98 14 16 -94 -17 55 82 -33 -68 90 -48 -4 -96 61 46 -30 85 32 81 53 -34 -89 94
98 24 19 -26 -46 1 -26 -33 -44 53 24 -55 38 -91 -10 -2 99 0 51 94 52 -61 -95 40 -65 -19 -84 71 68 2 99 90
82 69 21 -88 -62 -56 -44 0 -46 2 98 5 88 -48 63 38 -81 -83 74 -79 -73 46 -36 -82 19 65 -10 88 -29 91 27 -89
41 -62 -48 -56 -81 -42 2 4 -61 -42 -91")
'_TheAngryProfessor(5, "500 31", "-17 94 -6 92 -68 -83 -68 -95 -99 -73 21 37 -40
86 -35 -90 23 3 -90 -16 59 23 -57 50 35 -84 -73 0 -34 84 -97 25 -10 -54 28 -62 -23 66 8 40 91 -5 98 -78 43
5 -89 -14 -12 4 43 32 56 98 -67 -13 16 27 75 -51 23 63 39 -16 -2 44 -38 12 -78 64 -1 -8 -47 -36 96 -44 -95
84 -41 38 -20 89 62 -9 -63 -38 -2 34 -37 75 -9 5 -32 -44 -41 69 -17 23 -11 -24 58 -39 -65 14 -96 88 66 -15
34 -75 -93 88 2 94 -49 88 -33 -72 -53 -54 81 60 -40 -49 86 2 -69 42 -6 37 -58 -63 56 -43 26 -64 -43 58 -51 -
58 -32 68 -54 76 -2 -16 -42 -5 -71 13 -97 -57 53 -76 23 45 -98 -12 80 65 6 95 65 99 0 86 -93 -90 10 54 -52 -
92 69 54 -97 35 -54 -51 -83 -60 67 81 -89 -59 -41 85 -69 -95 86 39 -70 -86 58 -95 -92 -25 53 -73 34 94 50 -
69 12 -58 67 33 -77 -13 -13 28 -68 17 -65 16 -27 27 -93 -97 -14 8 -10 -22 -65 -74 95 87 -60 -37 -99 -77 15
4 5 -65 -13 -4 -19 10 13 66 -39 -24 -10 -77 14 36 -14 89 46 -91 -32 83 -74 -87 82 -49 -59 -24 -87 -79 -59 35
60 46 83 -66 37 -71 46 -4 64 -1 -30 45 -79 23 -44 69 -86 -63 56 -90 82 -10 -72 9 -71 -64 -41 -71 38 15 4 91
51 -12 88 54 -16 4 82 -77 -28 6 -3 -94 -75 -76 -94 -74 -74 5 -93 -86 -27 49 -55 -66 73 -5 54 -22 61 61 -69 -4
74 11 -73 -80 -39 -14 60 -82 -6 66 39 42 38 59 -91 55 -26 36 -67 52 98 -5 52 -48 79 22 -2 -71 21 -3 47 -34 -
77 72 -91 -55 -96 3 52 -58 -65 2 -97 63 9 -87 78 -29 -95 -4 82 79 72 -30 86 56 21 23 36 -93 -6 1 5 91 88 91
56 1 57 -5 72 0 -71 -67 14 5 92 -4 -41 50 -44 -52 63 -32 -36 -17 50 -57 92 -82 -85 -79 46 27 84 -69 70 -32
26 59 -2 27 97 -26 -62 48 -48 29 16 -34 38 80 -29 47 28 23 38 35 -39 -76 -22 -1 57 16 -39 -25 59 -39 21 48
-96 -84 26 -21 -32 -67 74 76 -50 -8 48 -68 -42 -99 -97 69 -23 -31 -24 67 49 63 6 -59 84 46 5 95 25 -67 47
19 41 20 -2 -22 25 -80 -76 -87 -11 49 -4 -17")
'_TheAngryProfessor(6, "500 431", "91 -76 -14 33 81 54 -49 -17 19 72 72 34 -14 -
10 75 53 71 -79 7 -18 89 25 -67 23 55 -71 -5 -20 88 16 -28 -81 98 38 77 46 -32 58 -18 -85 -29 0 65 54 -2 -
16 -92 -83 -62 -1 -29 -58 -23 60 2 -15 -6 65 -40 25 -95 -78 -95 -82 -34 -48 -83 -76 27 0 -33 60 -84 63 50 71
-33 -84 62 -37 2 63 -45 -96 27 54 -12 4 92 -25 59 39 -98 73 43 -61 -49 83 68 -70 -27 60 91 -40 -84 -78 62 -
89 93 24 25 -34 14 -72 0 -29 -67 19 7 46 -25 39 -45 51 -95 79 65 -47 -34 -13 14 -14 85 -44 93 87 -18 -10 7
7 42 75 -52 39 45 73 51 -46 20 32 37 37 -99 -71 61 61 -17 63 -62 7 -58 71 19 -98 12 -58 -3 -56 94 60 10 -
11 -61 48 -28 83 -40 49 24 -4 82 89 -61 -39 -77 15 25 -67 -5 62 24 -25 52 28 25 16 98 -45 -2 -19 89 20 17 -
53 -7 9 -65 48 -12 45 -61 -97 -18 -23 -80 5 -32 -35 16 -25 9 7 72 -44 36 -73 -3 -60 -66 -94 81 -19 76 16 -47
-69 79 35 -84 -87 20 21 -83 -97 -69 -99 91 16 -25 12 77 -85 58 59 51 66 -59 -99 72 96 -39 -96 66 50 -97 19
96 83 76 52 -93 55 9 98 -2 27 -42 -24 35 55 40 11 83 46 -40 91 -68 89 -4 11 34 51 61 -88 53 -85 74 86 -42
-68 31 -20 9 -29 -49 23 82 -12 -54 -44 0 -58 77 31 -77 57 -63 -13 -39 90 39 24 -41 -17 -42 -7 94 -17 -62 46
-52 -52 33 -41 12 -12 -97 -24 74 -38 6 -10 15 -27 -80 -20 77 0 90 -34 25 5 83 13 -75 -77 0 86 -19 96 -39 -
36 42 78 82 39 -59 81 78 4 1 -88 73 21 -40 96 87 48 -73 -65 -91 14 53 -49 -46 -85 -38 -49 52 -9 41 -24 90 -
61 -4 70 -83 2 83 -19 -56 -77 82 10 1 -27 25 -74 -28 -82 14 84 -88 85 -89 53 -61 43 60 78 25 -60 13 -69 -22
-78 55 85 0 19 -75 86 54 -32 35 -32 -72 -63 -80 -31 36 -43 75 39 -51 16 82 66 83 -55 -66 -80 84 -28 76 -71
-24 9 -94 26 -7 27 -96 78 -49 -98 -76 57 -22 -77 48 67 66 23 -77 -10 43 77 -36 -23 -92 -52 -52 -82 99 -28 -
12 24 72 -43 -49 37 96 -36 22 -69 -32 -88 34 62")
'_TheAngryProfessor(7, "500 434", "-97 -9 11 71 -5 -2 25 -38 -40 -78 -33 -47 86 -
32 -2 -56 62 -80 22 -91 -81 -81 63 -16 -20 14 98 -24 82 7 84 88 81 24 -24 -87 -13 63 92 -83 78 -18 10 64 3
-80 -87 -85 -41 28 -29 -22 36 70 69 -92 -2 -27 9 -60 15 -51 62 -75 -3 21 71 -27 -81 -35 -55 50 -95 26 21 69
79 43 -61 49 74 49 65 5 -29 -98 73 98 78 24 14 -88 66 -87 -2 96 10 -26 77 75 77 -47 25 -22 73 8 -92 33 32
-89 61 -14 86 0 -25 -74 0 -56 -18 33 -76 -78 42 78 85 60 57 22 67 59 97 -98 -6 27 36 15 -58 85 10 26 -36
97 -12 89 42 -76 34 -93 -85 17 85 -39 -31 95 -40 -92 59 -22 -61 -3 64 48 -59 -92 14 -18 -94 -46 -34 -22 66
7 -56 -48 -44 73 -84 -60 -15 39 -61 84 67 85 -27 32 -74 -70 20 52 22 -25 51 -1 89 -51 -3 -11 69 28 56 41 -
51 -65 -81 -91 95 -62 54 16 9 -47 54 86 -6 71 -26 98 -27 -4 33 64 65 -26 -95 15 61 72 -24 90 -25 -98 -77 85
11 -64 89 -76 60 78 -48 -15 -60 -24 97 19 27 -78 17 -60 -56 -29 58 52 60 77 -76 70 31 -24 61 3 -65 -97 -48
68 35 -2 -3 -15 37 77 -36 -53 -46 47 26 1 -83 78 -8 36 -96 92 -45 -19 -51 0 -96 58 84 54 56 -53 6 23 82 -14
2 82 -14 -34 -50 -57 41 -92 -21 -87 2 22 76 -27 -9 -41 -99 -10 -81 -83 -32 81 -7 -50 -20 -11 -29 -87 82 69 -
59 2 -90 -24 -62 -54 99 -19 -8 -88 -58 -8 -36 -97 62 10 -81 32 -29 -94 -16 89 35 75 -81 -28 -14 31 84 68 47
71 95 3 65 -20 -49 -49 22 31 -39 47 -48 55 58 82 -58 37 -62 82 -89 60 15 74 -38 93 70 35 70 -3 71 -86 -91
-35 -16 -32 -71 -96 7 76 -80 -75 9 -21 -6 59 -61 -58 -21 -10 -62 -94 -88 72 -65 40 -69 48 83 -9 -93 70 18 11
-22 28 65 70 -17 0 94 79 -12 -93 -96 36 -74 48 87 -83 -33 -45 86 -55 -61 -37 -48 70 44 -56 17 34 3 36 93
51 -83 29 -16 -76 -92 -37 34 -53 23 -22 5 36 90 -50 97 -67 50 6 85 95 0 70 92 -64 -84 7 47 2 -21 -77 54 50
93 22 91 60 -54 -29 6 -13 -83 -85 69 -20 92 -60")
_TheAngryProfessor(8, "500 248", "-39 -30 -62 30 -6 -86 -19 -70 66 -99 -12 -69
79 14 64 -86 -96 25 68 -67 20 -31 -36 6 97 -3 44 64 43 -6 -56 63 8 14 47 -55 -38 10 40 80 74 0 8 98 -47 -
11 -49 59 66 -38 -58 -84 32 74 15 -62 -43 63 -31 7 19 34 96 -30 71 -79 -66 -78 61 75 63 -69 4 -10 -47 -17
39 -38 -97 -1 42 49 95 -11 84 37 -27 58 -91 70 37 56 91 -63 68 8 96 22 -89 -3 -71 25 -99 -34 3 -33 45 -20
88 -77 99 -18 -95 -90 -74 -10 86 -1 -18 -27 -92 13 -54 -26 68 -99 -40 -66 10 73 -2 -35 71 25 -75 15 17 9 -66
-65 90 6 -34 71 81 81 -31 23 8 96 4 -4 -43 -44 -1 96 -26 74 26 -9 -41 42 -63 -27 -17 -55 86 -95 73 91 2 -17
93 45 89 31 -48 4 -43 -83 -7 35 -50 27 -74 -1 62 9 62 80 60 -83 37 -72 -22 -42 -45 -27 -59 22 29 -14 94 -52
29 8 -95 -2 -82 14 -81 86 37 -26 20 34 -76 -93 24 -26 29 -99 -78 -58 -27 18 84 91 -18 -73 69 91 -9 -15 -82
91 81 -89 -44 -24 75 84 -47 -84 -96 -59 17 63 87 -16 25 -86 2 -17 -74 23 -36 -60 -87 52 -53 -1 -66 -1 -96 -
27 -77 -79 -40 78 42 -67 -61 -14 23 -83 -82 0 50 -54 71 -71 99 79 -50 58 -11 -72 5 72 5 9 41 -88 -67 41 28
38 -14 -18 79 57 -54 -15 -68 43 -96 -65 -18 32 -48 -23 89 -55 -83 19 2 -53 10 -71 9 -56 -72 -46 27 76 7 -56
65 51 38 62 3 1 89 96 91 59 -78 -54 -87 85 33 94 6 -98 19 -88 -33 -89 66 -24 -90 -73 92 -77 -61 -77 9 -45 -
68 -63 -8 -14 -97 -15 -41 -24 -26 -55 28 49 -47 88 1 -75 -28 61 -46 -78 -83 58 37 11 84 34 98 58 14 6 31 37
-24 96 30 -65 -73 -89 62 26 66 -62 97 14 -70 -79 -55 -61 -19 -54 -88 -14 -47 -24 -55 7 -63 -90 46 76 77 -18
24 -16 92 97 -41 94 67 1 -21 48 82 49 43 -96 32 5 -49 -57 43 75 18 -29 40 13 -91 -49 0 5 -27 -67 20 21 -97
63 84 29 -60 93 40 65 -19 8 -69 -18 19 60 -62 -60 11 52 62 -3 39 26 6 -63 -58 1 -89 -27 9 47 21 32 -84 33
18 73 -88 -41 91 -75 -81 80 0 -79 -47 33")
'_TheAngryProfessor(9, "500 70", "22 39 -24 -94 -19 -75 -36 92 -13 -21 -73 -14
28 -68 -35 -3 43 31 -25 -1 22 61 -60 52 -27 8 55 -34 -20 33 -44 65 -35 7 77 57 36 63 76 -21 -41 -55 56 32
48 -84 57 -80 50 -5 -47 31 -36 83 -62 20 -37 52 70 22 5 11 60 -55 82 41 -26 -16 19 -79 -55 89 28 -38 81 -
68 19 -48 -26 -93 19 -41 -60 -12 -60 -17 -43 60 -51 21 11 70 -73 62 78 60 -43 95 -11 -86 50 -39 61 -65 2 -
48 -81 96 93 -54 -19 -20 69 -21 74 -56 -63 71 99 93 -27 -19 16 -15 -78 -32 -36 15 -68 90 48 19 -94 91 79
51 30 67 38 7 3 -70 43 -49 -26 -58 38 -37 20 30 -65 9 -52 93 62 11 91 -58 70 -98 47 70 -85 -69 -40 8 -34
52 98 -33 -97 27 77 -22 -44 96 -76 80 30 19 54 27 98 -30 28 -9 -59 65 25 -88 12 17 2 2 52 54 54 -50 16 52
96 21 -50 96 78 50 68 -82 69 -7 -11 -83 -47 -21 -66 -60 35 -21 24 -66 1 96 -39 96 -15 -34 16 43 -3 31 -38 -
35 -76 -15 26 -54 1 53 -81 -2 4 75 -6 88 35 -83 -62 -50 -80 91 99 90 0 46 -45 30 40 -23 -75 -61 83 87 -67
88 -8 10 -78 64 96 12 14 92 -99 -54 78 -89 -63 11 -70 -82 31 42 -45 92 -21 35 -50 -42 -94 27 -63 90 -49 -
10 -1 2 37 94 2 27 -94 -11 90 -45 -2 14 -93 92 6 65 -99 -43 63 -22 27 -41 -12 65 -58 44 87 77 62 26 76 -31
-11 -15 16 -92 39 17 -90 -58 97 12 12 16 -12 47 86 -68 -6 -23 73 18 54 67 23 97 32 -5 -51 -24 -16 -56 2 51
59 83 94 -48 41 97 94 85 7 23 -15 -26 -71 37 -10 86 67 -6 -74 -62 71 -32 -57 -43 11 -27 -66 62 -40 15 -92 -
73 -22 -21 86 -68 -46 -74 -22 71 37 -17 -5 -45 -31 48 13 -35 -53 87 -43 49 -9 -48 -45 69 19 90 18 -21 -99
77 43 -99 21 40 -94 -10 -16 -39 79 48 99 26 -77 -22 17 40 -65 -9 30 -7 90 32 -29 -73 83 -62 12 3 -87 18 -30
18 -2 -85 29 -8 -15 30 63 -8 -77 81 -10 -30 -15 54 -11 92 0 -45 -74 -52 -98 -37 -38 -60 -67 56 -31 -27 39 -
43 6 -63 64 39 -66 -32 26 77 -19 32 -84 -68 -80 -65 -29 22 -43 -93")
'_TheAngryProfessor(10, "500 60", "16 -35 2 -9 -28 -3 -35 36 76 -19 12 -70 -22 -
40 57 36 0 -57 32 -73 -70 32 25 12 -4 49 59 -16 79 68 33 14 -28 -39 90 25 -92 71 -30 -71 15 3 -44 -9 -79 -
63 33 -49 -49 26 -52 -4 -13 -66 59 -78 62 -1 52 81 91 96 -22 38 -86 14 -20 -40 -46 29 -96 32 93 -16 48 -82
-93 16 -28 -42 -75 -58 -28 33 56 32 26 14 1 70 -31 41 -82 -96 -68 -78 48 43 86 54 43 99 -54 -93 48 -5 -15 8
60 -13 96 -76 31 24 -48 63 -17 65 -32 27 22 -15 -35 91 -81 28 -99 25 76 -51 -79 -20 33 -20 -44 -49 36 -59
41 -71 7 -3 -56 37 77 -9 56 5 -67 -7 -28 81 -73 -89 92 88 -12 -58 71 4 37 9 -96 86 -43 -79 -2 88 -53 -42 -90
49 26 -74 -55 98 44 -89 25 8 73 -91 -99 55 -9 -2 -31 -5 -63 -7 58 -15 16 95 -84 -61 42 85 -36 98 41 -49 -56
-82 -86 -90 46 -99 61 55 49 56 -73 -84 -86 -59 -88 0 68 -68 24 51 -15 33 44 -26 -9 36 76 96 7 -89 -68 44 25
43 -22 72 -44 69 99 85 78 -43 97 -16 -46 52 -48 55 -12 26 44 -75 9 -80 93 -16 -42 -26 50 97 -52 -16 50 -29
22 49 7 7 73 -24 9 38 -56 91 62 7 -90 -67 95 -54 -5 -35 32 80 -34 24 0 46 30 67 78 59 98 -12 -28 -14 -74 -
49 96 -16 37 77 -54 -98 65 -28 39 16 -19 -86 0 32 54 -85 14 -84 -93 -92 -88 35 59 -2 -55 40 51 -73 -79 -78
-38 -87 16 -7 -36 8 -94 -31 58 -5 3 -40 -76 58 71 93 3 -66 -56 80 -26 70 83 -26 86 -8 -81 48 -14 -17 95 -52 -
96 22 44 -97 95 -43 -20 -25 53 0 85 43 55 -42 -76 6 64 28 -83 31 -45 62 96 -24 -24 35 -73 13 43 -35 -1 -95
70 27 -54 36 -37 65 -89 34 -66 -27 -99 72 0 -66 -1 71 -90 80 61 -43 19 -83 -3 -26 -90 -13 -46 -36 96 -51 -17
-20 -73 -51 22 36 -7 -2 40 -32 34 -72 82 30 11 76 57 35 1 69 -85 -17 77 -55 -52 -48 -32 71 28 44 36 20 -73
27 98 2 -2 -28 -42 -48 -22 86 16 -72 -63 89 -93 -96 21 92 72 55 65 -57 18 55 2 -98 -2 20 91 -69 22 2 42 68
41 -93 59 66 -8 -22 -66 86 -95 39")
End Sub
End Class
End Namespace
Namespace StackOverflow
Public Class Posts
Public Class AlphaNumComparer 'Example
Implements IComparer(Of String)
Public Function Compare(x As String, y As String) As Integer Implements
IComparer(Of String).Compare
Dim iCmp = String.Compare(x, y)
If x.Split(" ").Count(Function(t) IsNumeric(t)) > 0 AndAlso y.Split("
").Count(Function(t) IsNumeric(t)) Then
Return CalcSNV(x).CompareTo(CalcSNV(y))
Else
Return iCmp
End If
End Function
Function CalcSNV(sSent As String) As Double
If String.IsNullOrWhiteSpace(sSent) Then Return 0
Return (From w In sSent.Split(" ")
Select CalcWNV(w)).Sum
End Function
Function CalcWNV(sWord As String) As Double
If String.IsNullOrWhiteSpace(sWord) Then Return 0
Dim d As Double
If IsNumeric(sWord) AndAlso Double.TryParse(sWord, d) Then Return d
Dim bV = Aggregate c In sWord
Select Char.GetNumericValue(c)
Into Count
Return bV
End Function
End Class
Sub ParallelArrays()
'The application will use two parallel arrays
'a string array that is initialized with the names of the months
'an Integer array that is initialized with the number of days in each month
Dim months = {"January", "February", "March", "April", "May", "June", "July",
"August", "September", "October", "November", "December"}
Dim days() As Integer = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}
If months.Length = days.Length Then
For i As Integer = 0 To months.GetUpperBound(0)
'ListBox1.Items.Add(months(i) & " has " & days(i) & " days in it")
Next
End If
End Sub
End Class
End Namespace