Skip to content

Commit c308e58

Browse files
authored
Added tests for tasks 84-2425
1 parent b2cce57 commit c308e58

File tree

5 files changed

+217
-0
lines changed

5 files changed

+217
-0
lines changed

src/test/kotlin/g0001_0100/s0084_largest_rectangle_in_histogram/SolutionTest.kt

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,44 @@ internal class SolutionTest {
1919
fun largestRectangleArea3() {
2020
assertThat(Solution().largestRectangleArea(intArrayOf()), equalTo(0))
2121
}
22+
23+
@Test
24+
fun largestRectangleArea4() {
25+
assertThat(Solution().largestRectangleArea(intArrayOf(5)), equalTo(5))
26+
}
27+
28+
@Test
29+
fun largestRectangleArea5() {
30+
assertThat(Solution().largestRectangleArea(intArrayOf(3, 6)), equalTo(6))
31+
}
32+
33+
@Test
34+
fun largestRectangleArea6() {
35+
assertThat(Solution().largestRectangleArea(intArrayOf(2, 2, 2, 2)), equalTo(8))
36+
}
37+
38+
@Test
39+
fun largestRectangleArea7() {
40+
assertThat(Solution().largestRectangleArea(intArrayOf(1, 2, 3, 4, 5)), equalTo(9))
41+
}
42+
43+
@Test
44+
fun largestRectangleArea8() {
45+
assertThat(Solution().largestRectangleArea(intArrayOf(5, 4, 3, 2, 1)), equalTo(9))
46+
}
47+
48+
@Test
49+
fun largestRectangleArea9() {
50+
assertThat(Solution().largestRectangleArea(intArrayOf(2, 1, 5, 6, 2, 3)), equalTo(10))
51+
}
52+
53+
@Test
54+
fun largestRectangleArea10() {
55+
assertThat(Solution().largestRectangleArea(intArrayOf(1, 1, 1, 1)), equalTo(4))
56+
}
57+
58+
@Test
59+
fun largestRectangleArea11() {
60+
assertThat(Solution().largestRectangleArea(intArrayOf()), equalTo(0))
61+
}
2262
}

src/test/kotlin/g0201_0300/s0295_find_median_from_data_stream/MedianFinderTest.kt

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,4 +28,50 @@ internal class MedianFinderTest {
2828
medianFinder.addNum(-1)
2929
assertThat(medianFinder.findMedian(), equalTo(1.0))
3030
}
31+
32+
@Test
33+
fun medianFinder3() {
34+
val medianFinder = MedianFinder()
35+
medianFinder.addNum(42)
36+
assertThat(medianFinder.findMedian(), equalTo(42.0))
37+
}
38+
39+
@Test
40+
fun medianFinder4() {
41+
val medianFinder = MedianFinder()
42+
medianFinder.addNum(5)
43+
medianFinder.addNum(5)
44+
medianFinder.addNum(5)
45+
medianFinder.addNum(5)
46+
assertThat(medianFinder.findMedian(), equalTo(5.0))
47+
}
48+
49+
@Test
50+
fun medianFinder5() {
51+
val medianFinder = MedianFinder()
52+
medianFinder.addNum(-5)
53+
medianFinder.addNum(-10)
54+
medianFinder.addNum(-3)
55+
assertThat(medianFinder.findMedian(), equalTo(-5.0))
56+
}
57+
58+
@Test
59+
fun medianFinder6() {
60+
val medianFinder = MedianFinder()
61+
medianFinder.addNum(1000)
62+
medianFinder.addNum(1)
63+
medianFinder.addNum(500)
64+
medianFinder.addNum(0)
65+
assertThat(medianFinder.findMedian(), equalTo(250.5))
66+
}
67+
68+
@Test
69+
fun medianFinder7() {
70+
val medianFinder = MedianFinder()
71+
medianFinder.addNum(1)
72+
medianFinder.addNum(2)
73+
medianFinder.addNum(3)
74+
medianFinder.addNum(4)
75+
assertThat(medianFinder.findMedian(), equalTo(2.5))
76+
}
3177
}

src/test/kotlin/g0801_0900/s0858_mirror_reflection/SolutionTest.kt

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,4 +14,39 @@ internal class SolutionTest {
1414
fun mirrorReflection2() {
1515
assertThat(Solution().mirrorReflection(3, 1), equalTo(1))
1616
}
17+
18+
@Test
19+
fun mirrorReflection3() {
20+
assertThat(Solution().mirrorReflection(4, 2), equalTo(2))
21+
}
22+
23+
@Test
24+
fun mirrorReflection4() {
25+
assertThat(Solution().mirrorReflection(6, 3), equalTo(2))
26+
}
27+
28+
@Test
29+
fun mirrorReflection5() {
30+
assertThat(Solution().mirrorReflection(5, 2), equalTo(0))
31+
}
32+
33+
@Test
34+
fun mirrorReflection6() {
35+
assertThat(Solution().mirrorReflection(7, 3), equalTo(1))
36+
}
37+
38+
@Test
39+
fun mirrorReflection7() {
40+
assertThat(Solution().mirrorReflection(1000, 250), equalTo(2))
41+
}
42+
43+
@Test
44+
fun mirrorReflection8() {
45+
assertThat(Solution().mirrorReflection(4, 4), equalTo(1))
46+
}
47+
48+
@Test
49+
fun mirrorReflection9() {
50+
assertThat(Solution().mirrorReflection(1, 1), equalTo(1))
51+
}
1752
}

src/test/kotlin/g1901_2000/s1901_find_a_peak_element_ii/SolutionTest.kt

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package g1901_2000.s1901_find_a_peak_element_ii
22

33
import org.hamcrest.CoreMatchers.equalTo
44
import org.hamcrest.MatcherAssert.assertThat
5+
import org.junit.jupiter.api.Assertions
56
import org.junit.jupiter.api.Test
67

78
internal class SolutionTest {
@@ -20,4 +21,69 @@ internal class SolutionTest {
2021
equalTo(intArrayOf(1, 1)),
2122
)
2223
}
24+
25+
@Test
26+
fun findPeakGrid3() {
27+
assertThat(
28+
Solution().findPeakGrid(arrayOf(intArrayOf(1, 3, 2, 4))),
29+
equalTo(intArrayOf(0, 1)),
30+
)
31+
}
32+
33+
@Test
34+
fun findPeakGrid4() {
35+
assertThat(
36+
Solution().findPeakGrid(
37+
arrayOf(
38+
intArrayOf(1),
39+
intArrayOf(3),
40+
intArrayOf(2),
41+
intArrayOf(4),
42+
),
43+
),
44+
equalTo(intArrayOf(3, 0)),
45+
)
46+
}
47+
48+
@Test
49+
fun findPeakGrid5() {
50+
assertThat(
51+
Solution().findPeakGrid(
52+
arrayOf(
53+
intArrayOf(2, 2),
54+
intArrayOf(2, 2),
55+
),
56+
),
57+
equalTo(intArrayOf(0, 1)),
58+
)
59+
}
60+
61+
@Test
62+
fun findPeakGrid6() {
63+
val mat = arrayOf(
64+
intArrayOf(1, 2, 3, 6),
65+
intArrayOf(5, 6, 7, 8),
66+
intArrayOf(4, 3, 2, 1),
67+
)
68+
69+
val peak = Solution().findPeakGrid(mat)
70+
71+
Assertions.assertTrue(peak[0] >= 0 && peak[1] >= 0)
72+
73+
val value = mat[peak[0]][peak[1]]
74+
val up = if (peak[0] > 0) mat[peak[0] - 1][peak[1]] else -1
75+
val down = if (peak[0] < mat.size - 1) mat[peak[0] + 1][peak[1]] else -1
76+
val left = if (peak[1] > 0) mat[peak[0]][peak[1] - 1] else -1
77+
val right = if (peak[1] < mat[0].size - 1) mat[peak[0]][peak[1] + 1] else -1
78+
79+
Assertions.assertTrue(value > up && value > down && value > left && value > right)
80+
}
81+
82+
@Test
83+
fun findPeakGrid7() {
84+
assertThat(
85+
Solution().findPeakGrid(arrayOf(intArrayOf(5))),
86+
equalTo(intArrayOf(0, 0)),
87+
)
88+
}
2389
}

src/test/kotlin/g2401_2500/s2425_bitwise_xor_of_all_pairings/SolutionTest.kt

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,34 @@ internal class SolutionTest {
1717
fun xorAllNums2() {
1818
assertThat(Solution().xorAllNums(intArrayOf(1, 2), intArrayOf(3, 4)), equalTo(0))
1919
}
20+
21+
@Test
22+
fun xorAllNums3() {
23+
assertThat(Solution().xorAllNums(intArrayOf(7), intArrayOf(1, 2, 3)), equalTo(7))
24+
}
25+
26+
@Test
27+
fun xorAllNums4() {
28+
assertThat(Solution().xorAllNums(intArrayOf(1, 2, 3), intArrayOf(5)), equalTo(5))
29+
}
30+
31+
@Test
32+
fun xorAllNums5() {
33+
assertThat(Solution().xorAllNums(intArrayOf(8), intArrayOf(6)), equalTo(14))
34+
}
35+
36+
@Test
37+
fun xorAllNums6() {
38+
assertThat(Solution().xorAllNums(intArrayOf(), intArrayOf(1, 2, 3)), equalTo(0))
39+
}
40+
41+
@Test
42+
fun xorAllNums7() {
43+
assertThat(Solution().xorAllNums(intArrayOf(4, 5, 6), intArrayOf()), equalTo(0))
44+
}
45+
46+
@Test
47+
fun xorAllNums8() {
48+
assertThat(Solution().xorAllNums(intArrayOf(), intArrayOf()), equalTo(0))
49+
}
2050
}

0 commit comments

Comments
 (0)