Skip to content

Commit 03752f7

Browse files
authored
Added tests for tasks 441-3040
1 parent fb00214 commit 03752f7

File tree

5 files changed

+227
-0
lines changed

5 files changed

+227
-0
lines changed

src/test/java/g0401_0500/s0441_arranging_coins/SolutionTest.java

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import static org.hamcrest.CoreMatchers.equalTo;
44
import static org.hamcrest.MatcherAssert.assertThat;
5+
import static org.junit.jupiter.api.Assertions.assertThrows;
56

67
import org.junit.jupiter.api.Test;
78

@@ -15,4 +16,51 @@ void findKthNumber() {
1516
void arrangeCoins2() {
1617
assertThat(new Solution().arrangeCoins(8), equalTo(3));
1718
}
19+
20+
@Test
21+
void arrangeCoins3() {
22+
assertThat(new Solution().arrangeCoins(0), equalTo(0));
23+
}
24+
25+
@Test
26+
void arrangeCoins4() {
27+
assertThat(new Solution().arrangeCoins(1), equalTo(1));
28+
}
29+
30+
@Test
31+
void arrangeCoins5() {
32+
assertThat(new Solution().arrangeCoins(2), equalTo(1));
33+
}
34+
35+
@Test
36+
void arrangeCoins6() {
37+
assertThat(new Solution().arrangeCoins(3), equalTo(2));
38+
}
39+
40+
@Test
41+
void arrangeCoins7() {
42+
assertThat(new Solution().arrangeCoins(6), equalTo(3));
43+
}
44+
45+
@Test
46+
void arrangeCoins8() {
47+
assertThat(new Solution().arrangeCoins(2147483647), equalTo(65535));
48+
}
49+
50+
@Test
51+
void arrangeCoins9() {
52+
assertThat(new Solution().arrangeCoins(7), equalTo(3));
53+
}
54+
55+
@Test
56+
void arrangeCoins10() {
57+
Solution solution = new Solution();
58+
59+
Exception exception =
60+
assertThrows(IllegalArgumentException.class, () -> solution.arrangeCoins(-5));
61+
62+
assertThat(
63+
exception.getMessage(),
64+
equalTo("Input Number is invalid. Only positive numbers are allowed"));
65+
}
1866
}

src/test/java/g0801_0900/s0836_rectangle_overlap/SolutionTest.java

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,4 +26,47 @@ void isRectangleOverlap3() {
2626
new Solution().isRectangleOverlap(new int[] {0, 0, 1, 1}, new int[] {2, 2, 3, 3}),
2727
equalTo(false));
2828
}
29+
30+
@Test
31+
void isRectangleOverlap4() {
32+
assertThat(
33+
new Solution().isRectangleOverlap(new int[] {0, 0, 2, 2}, new int[] {0, 2, 2, 4}),
34+
equalTo(false));
35+
}
36+
37+
@Test
38+
void isRectangleOverlap5() {
39+
assertThat(
40+
new Solution().isRectangleOverlap(new int[] {1, 1, 3, 3}, new int[] {1, 0, 3, 1}),
41+
equalTo(false));
42+
}
43+
44+
@Test
45+
void isRectangleOverlap6() {
46+
assertThat(
47+
new Solution()
48+
.isRectangleOverlap(new int[] {-3, -3, -1, -1}, new int[] {-2, -2, 0, 0}),
49+
equalTo(true));
50+
}
51+
52+
@Test
53+
void isRectangleOverlap7() {
54+
assertThat(
55+
new Solution().isRectangleOverlap(new int[] {0, 0, 4, 4}, new int[] {1, 1, 3, 3}),
56+
equalTo(true));
57+
}
58+
59+
@Test
60+
void isRectangleOverlap8() {
61+
assertThat(
62+
new Solution().isRectangleOverlap(new int[] {0, 0, 2, 2}, new int[] {0, 0, 2, 2}),
63+
equalTo(true));
64+
}
65+
66+
@Test
67+
void isRectangleOverlap9() {
68+
assertThat(
69+
new Solution().isRectangleOverlap(new int[] {0, 0, 1, 1}, new int[] {1, 1, 2, 2}),
70+
equalTo(false));
71+
}
2972
}

src/test/java/g0801_0900/s0840_magic_squares_in_grid/SolutionTest.java

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,64 @@ void numMagicSquaresInside() {
1919
void numMagicSquaresInside2() {
2020
assertThat(new Solution().numMagicSquaresInside(new int[][] {{8}}), equalTo(0));
2121
}
22+
23+
@Test
24+
void numMagicSquaresInside3() {
25+
assertThat(new Solution().numMagicSquaresInside(new int[][] {{1, 2}, {3, 4}}), equalTo(0));
26+
}
27+
28+
@Test
29+
void numMagicSquaresInside4() {
30+
assertThat(
31+
new Solution()
32+
.numMagicSquaresInside(
33+
new int[][] {
34+
{4, 3, 8, 4, 3},
35+
{9, 5, 1, 9, 5},
36+
{2, 7, 6, 2, 7},
37+
{4, 3, 8, 4, 3},
38+
{9, 5, 1, 9, 5}
39+
}),
40+
equalTo(1));
41+
}
42+
43+
@Test
44+
void numMagicSquaresInside5() {
45+
assertThat(
46+
new Solution()
47+
.numMagicSquaresInside(
48+
new int[][] {
49+
{10, 3, 8},
50+
{9, 5, 1},
51+
{2, 7, 6}
52+
}),
53+
equalTo(0));
54+
}
55+
56+
@Test
57+
void numMagicSquaresInside6() {
58+
assertThat(
59+
new Solution()
60+
.numMagicSquaresInside(
61+
new int[][] {
62+
{4, 3, 8, 4},
63+
{9, 5, 1, 9},
64+
{2, 7, 6, 2},
65+
{4, 3, 8, 4}
66+
}),
67+
equalTo(1));
68+
}
69+
70+
@Test
71+
void numMagicSquaresInside7() {
72+
assertThat(
73+
new Solution()
74+
.numMagicSquaresInside(
75+
new int[][] {
76+
{2, 2, 2},
77+
{2, 2, 2},
78+
{2, 2, 2}
79+
}),
80+
equalTo(0));
81+
}
2282
}

src/test/java/g0801_0900/s0863_all_nodes_distance_k_in_binary_tree/SolutionTest.java

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,4 +32,40 @@ void distanceK2() {
3232
3),
3333
equalTo(Collections.emptyList()));
3434
}
35+
36+
@Test
37+
void distanceK3() {
38+
TreeNode root =
39+
TreeUtils.constructBinaryTree(Arrays.asList(3, 5, 1, 6, 2, 0, 8, null, null, 7, 4));
40+
assertThat(
41+
new Solution().distanceK(root, new TreeNode(3), 2),
42+
equalTo(Arrays.asList(6, 2, 0, 8)));
43+
}
44+
45+
@Test
46+
void distanceK4() {
47+
TreeNode root =
48+
TreeUtils.constructBinaryTree(Arrays.asList(3, 5, 1, 6, 2, 0, 8, null, null, 7, 4));
49+
assertThat(new Solution().distanceK(root, new TreeNode(7), 1), equalTo(Arrays.asList(2)));
50+
}
51+
52+
@Test
53+
void distanceK5() {
54+
TreeNode root = TreeUtils.constructBinaryTree(Arrays.asList(1, 2, 3));
55+
assertThat(new Solution().distanceK(root, new TreeNode(2), 0), equalTo(Arrays.asList(2)));
56+
}
57+
58+
@Test
59+
void distanceK6() {
60+
TreeNode root = TreeUtils.constructBinaryTree(Arrays.asList(1, 2, 3));
61+
assertThat(
62+
new Solution().distanceK(root, new TreeNode(1), 5),
63+
equalTo(Collections.emptyList()));
64+
}
65+
66+
@Test
67+
void distanceK7() {
68+
TreeNode root = TreeUtils.constructBinaryTree(Arrays.asList(1, 2, null, 3, null, 4));
69+
assertThat(new Solution().distanceK(root, new TreeNode(2), 2), equalTo(Arrays.asList(4)));
70+
}
3571
}

src/test/java/g3001_3100/s3040_maximum_number_of_operations_with_the_same_score_ii/SolutionTest.java

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,44 @@ void maxOperations() {
1515
void maxOperations2() {
1616
assertThat(new Solution().maxOperations(new int[] {3, 2, 6, 1, 4}), equalTo(2));
1717
}
18+
19+
@Test
20+
void maxOperations3() {
21+
assertThat(new Solution().maxOperations(new int[] {1, 2}), equalTo(1));
22+
}
23+
24+
@Test
25+
void maxOperations4() {
26+
assertThat(new Solution().maxOperations(new int[] {1, 1, 1}), equalTo(1));
27+
}
28+
29+
@Test
30+
void maxOperations5() {
31+
assertThat(new Solution().maxOperations(new int[] {2, 2, 2, 2, 2, 2}), equalTo(3));
32+
}
33+
34+
@Test
35+
void maxOperations6() {
36+
assertThat(new Solution().maxOperations(new int[] {1, 2, 3, 4, 5, 6}), equalTo(3));
37+
}
38+
39+
@Test
40+
void maxOperations7() {
41+
assertThat(new Solution().maxOperations(new int[] {6, 5, 4, 3, 2, 1}), equalTo(3));
42+
}
43+
44+
@Test
45+
void maxOperations8() {
46+
assertThat(new Solution().maxOperations(new int[] {1, 3, 2, 4, 1, 3}), equalTo(2));
47+
}
48+
49+
@Test
50+
void maxOperations9() {
51+
assertThat(new Solution().maxOperations(new int[] {1, 2, 4, 5}), equalTo(2));
52+
}
53+
54+
@Test
55+
void maxOperations10() {
56+
assertThat(new Solution().maxOperations(new int[] {5, 5}), equalTo(1));
57+
}
1858
}

0 commit comments

Comments
 (0)