From deb6dca009e8337bd63d8df4db7650df307df12b Mon Sep 17 00:00:00 2001 From: ThanhNIT Date: Sun, 16 Nov 2025 14:34:55 +0700 Subject: [PATCH] Added tests 33-1036 --- .../SolutionTest.java | 60 +++++++++++++ .../MyCircularQueueTest.java | 74 ++++++++++++++++ .../SolutionTest.java | 68 +++++++++++++++ .../SolutionTest.java | 48 +++++++++++ .../SolutionTest.java | 84 +++++++++++++++++++ 5 files changed, 334 insertions(+) diff --git a/src/test/java/g0001_0100/s0033_search_in_rotated_sorted_array/SolutionTest.java b/src/test/java/g0001_0100/s0033_search_in_rotated_sorted_array/SolutionTest.java index bb8277bce..104eada21 100644 --- a/src/test/java/g0001_0100/s0033_search_in_rotated_sorted_array/SolutionTest.java +++ b/src/test/java/g0001_0100/s0033_search_in_rotated_sorted_array/SolutionTest.java @@ -20,4 +20,64 @@ void search2() { void search3() { assertThat(new Solution().search(new int[] {1}, 0), equalTo(-1)); } + + @Test + void search4() { + assertThat(new Solution().search(new int[] {1, 2, 3, 4, 5, 6}, 4), equalTo(3)); + } + + @Test + void search5() { + assertThat(new Solution().search(new int[] {1, 2, 3, 4, 5, 6}, 10), equalTo(-1)); + } + + @Test + void search6() { + assertThat(new Solution().search(new int[] {6, 7, 0, 1, 2, 3, 4}, 7), equalTo(1)); + } + + @Test + void search7() { + assertThat(new Solution().search(new int[] {6, 7, 0, 1, 2, 3, 4}, 3), equalTo(5)); + } + + @Test + void search8() { + assertThat(new Solution().search(new int[] {5, 1}, 1), equalTo(1)); + } + + @Test + void search9() { + assertThat(new Solution().search(new int[] {5, 1}, 2), equalTo(-1)); + } + + @Test + void search10() { + assertThat(new Solution().search(new int[] {4, 5, 6, 7, 0, 1, 2}, 4), equalTo(0)); + } + + @Test + void search11() { + assertThat(new Solution().search(new int[] {4, 5, 6, 7, 0, 1, 2}, 2), equalTo(6)); + } + + @Test + void search12() { + assertThat(new Solution().search(new int[] {2, 3, 4, 5, 6, 0, 1}, 0), equalTo(5)); + } + + @Test + void search13() { + assertThat(new Solution().search(new int[] {0, 1, 2, 3, 4, 5}, 3), equalTo(3)); + } + + @Test + void search14() { + assertThat(new Solution().search(new int[] {5, 6, 7, 0, 1, 2, 3}, 2), equalTo(5)); + } + + @Test + void search15() { + assertThat(new Solution().search(new int[] {5, 6, 7, 0, 1, 2, 3}, 6), equalTo(1)); + } } diff --git a/src/test/java/g0601_0700/s0622_design_circular_queue/MyCircularQueueTest.java b/src/test/java/g0601_0700/s0622_design_circular_queue/MyCircularQueueTest.java index d9e815813..2a36181a4 100644 --- a/src/test/java/g0601_0700/s0622_design_circular_queue/MyCircularQueueTest.java +++ b/src/test/java/g0601_0700/s0622_design_circular_queue/MyCircularQueueTest.java @@ -19,4 +19,78 @@ void myCircularQueue() { assertThat(myCircularQueue.enQueue(4), equalTo(true)); assertThat(myCircularQueue.rear(), equalTo(4)); } + + @Test + void myCircularQueue2() { + MyCircularQueue q = new MyCircularQueue(3); + assertThat(q.enQueue(1), equalTo(true)); + assertThat(q.enQueue(2), equalTo(true)); + assertThat(q.enQueue(3), equalTo(true)); + assertThat(q.enQueue(4), equalTo(false)); + assertThat(q.rear(), equalTo(3)); + assertThat(q.isFull(), equalTo(true)); + assertThat(q.deQueue(), equalTo(true)); + assertThat(q.enQueue(4), equalTo(true)); + assertThat(q.rear(), equalTo(4)); + } + + @Test + void myCircularQueue3() { + MyCircularQueue q = new MyCircularQueue(2); + assertThat(q.front(), equalTo(-1)); + assertThat(q.rear(), equalTo(-1)); + assertThat(q.deQueue(), equalTo(false)); + assertThat(q.isEmpty(), equalTo(true)); + } + + @Test + void myCircularQueue4() { + MyCircularQueue q = new MyCircularQueue(1); + assertThat(q.enQueue(10), equalTo(true)); + assertThat(q.isFull(), equalTo(true)); + assertThat(q.front(), equalTo(10)); + assertThat(q.rear(), equalTo(10)); + assertThat(q.deQueue(), equalTo(true)); + assertThat(q.isEmpty(), equalTo(true)); + assertThat(q.front(), equalTo(-1)); + assertThat(q.rear(), equalTo(-1)); + } + + @Test + void myCircularQueue5() { + MyCircularQueue q = new MyCircularQueue(3); + + assertThat(q.enQueue(1), equalTo(true)); + assertThat(q.enQueue(2), equalTo(true)); + assertThat(q.enQueue(3), equalTo(true)); + assertThat(q.isFull(), equalTo(true)); + + assertThat(q.deQueue(), equalTo(true)); + assertThat(q.enQueue(4), equalTo(true)); + + assertThat(q.front(), equalTo(2)); + assertThat(q.rear(), equalTo(4)); + + assertThat(q.deQueue(), equalTo(true)); + assertThat(q.deQueue(), equalTo(true)); + assertThat(q.deQueue(), equalTo(true)); + assertThat(q.deQueue(), equalTo(false)); + } + + @Test + void myCircularQueue6() { + MyCircularQueue q = new MyCircularQueue(2); + + assertThat(q.enQueue(5), equalTo(true)); + assertThat(q.enQueue(6), equalTo(true)); + assertThat(q.isFull(), equalTo(true)); + + assertThat(q.deQueue(), equalTo(true)); + assertThat(q.deQueue(), equalTo(true)); + assertThat(q.isEmpty(), equalTo(true)); + + assertThat(q.enQueue(7), equalTo(true)); + assertThat(q.front(), equalTo(7)); + assertThat(q.rear(), equalTo(7)); + } } diff --git a/src/test/java/g0701_0800/s0782_transform_to_chessboard/SolutionTest.java b/src/test/java/g0701_0800/s0782_transform_to_chessboard/SolutionTest.java index 673c0c107..fc5111612 100644 --- a/src/test/java/g0701_0800/s0782_transform_to_chessboard/SolutionTest.java +++ b/src/test/java/g0701_0800/s0782_transform_to_chessboard/SolutionTest.java @@ -26,4 +26,72 @@ void movesToChessboard2() { void movesToChessboard3() { assertThat(new Solution().movesToChessboard(new int[][] {{1, 0}, {1, 0}}), equalTo(-1)); } + + @Test + void movesToChessboard4() { + assertThat( + new Solution() + .movesToChessboard( + new int[][] { + {0, 0}, + {0, 1} + }), + equalTo(-1)); + } + + @Test + void movesToChessboard5() { + assertThat( + new Solution() + .movesToChessboard( + new int[][] { + {1, 1}, + {1, 1} + }), + equalTo(-1)); + } + + @Test + void movesToChessboard6() { + assertThat( + new Solution() + .movesToChessboard( + new int[][] { + {1, 0}, + {1, 0} + }), + equalTo(-1)); + } + + @Test + void movesToChessboard7() { + assertThat( + new Solution() + .movesToChessboard( + new int[][] { + {1, 0, 1}, + {0, 1, 0}, + {1, 0, 1} + }), + equalTo(0)); + } + + @Test + void movesToChessboard8() { + assertThat( + new Solution() + .movesToChessboard( + new int[][] { + {1, 0, 0, 1}, + {0, 1, 1, 0}, + {1, 0, 0, 1}, + {0, 1, 1, 0} + }), + equalTo(1)); + } + + @Test + void movesToChessboard9() { + assertThat(new Solution().movesToChessboard(new int[][] {{0}}), equalTo(0)); + } } diff --git a/src/test/java/g0901_1000/s0972_equal_rational_numbers/SolutionTest.java b/src/test/java/g0901_1000/s0972_equal_rational_numbers/SolutionTest.java index 367de04ae..e7f446c24 100644 --- a/src/test/java/g0901_1000/s0972_equal_rational_numbers/SolutionTest.java +++ b/src/test/java/g0901_1000/s0972_equal_rational_numbers/SolutionTest.java @@ -20,4 +20,52 @@ void isRationalEqual2() { void isRationalEqual3() { assertThat(new Solution().isRationalEqual("0.9(9)", "1."), equalTo(true)); } + + @Test + void isRationalEqual4() { + assertThat(new Solution().isRationalEqual("3.14", "3.14"), equalTo(true)); + } + + @Test + void isRationalEqual5() { + assertThat(new Solution().isRationalEqual("3.14", "3.15"), equalTo(false)); + } + + @Test + void isRationalEqual6() { + // 0.(3) = 0.3333... + assertThat(new Solution().isRationalEqual("0.(3)", "0.3333333333"), equalTo(false)); + } + + @Test + void isRationalEqual7() { + assertThat(new Solution().isRationalEqual("0.(12)", "0.(13)"), equalTo(false)); + } + + @Test + void isRationalEqual8() { + // 1.(0) = 1.00000.... + assertThat(new Solution().isRationalEqual("1.(0)", "1."), equalTo(true)); + } + + @Test + void isRationalEqual9() { + // large repeating cycle + assertThat(new Solution().isRationalEqual("0.(987654321)", "0.(987654321)"), equalTo(true)); + } + + @Test + void isRationalEqual10() { + assertThat(new Solution().isRationalEqual("42", "42"), equalTo(true)); + } + + @Test + void isRationalEqual11() { + assertThat(new Solution().isRationalEqual("42", "42.0"), equalTo(true)); + } + + @Test + void isRationalEqual12() { + assertThat(new Solution().isRationalEqual("0.(1)", "0.(2)"), equalTo(false)); + } } diff --git a/src/test/java/g1001_1100/s1036_escape_a_large_maze/SolutionTest.java b/src/test/java/g1001_1100/s1036_escape_a_large_maze/SolutionTest.java index 9e201430c..85a29249a 100644 --- a/src/test/java/g1001_1100/s1036_escape_a_large_maze/SolutionTest.java +++ b/src/test/java/g1001_1100/s1036_escape_a_large_maze/SolutionTest.java @@ -23,4 +23,88 @@ void isEscapePossible2() { new int[][] {}, new int[] {0, 0}, new int[] {999999, 999999}), equalTo(true)); } + + @Test + void isEscapePossible3() { + assertThat( + new Solution() + .isEscapePossible(new int[][] {{1, 1}}, new int[] {0, 0}, new int[] {1, 1}), + equalTo(true)); + } + + @Test + void isEscapePossible4() { + assertThat( + new Solution() + .isEscapePossible( + new int[][] {{10, 10}}, new int[] {0, 0}, new int[] {0, 1}), + equalTo(true)); + } + + @Test + void isEscapePossible5() { + assertThat( + new Solution() + .isEscapePossible( + new int[][] {{0, 2}, {1, 2}, {2, 2}}, + new int[] {0, 0}, + new int[] {3, 3}), + equalTo(true)); + } + + @Test + void isEscapePossible6() { + assertThat( + new Solution() + .isEscapePossible( + new int[][] {{0, 1}, {0, 2}, {1, 0}, {2, 0}}, + new int[] {0, 0}, + new int[] {3, 3}), + equalTo(false)); + } + + @Test + void isEscapePossible7() { + assertThat( + new Solution() + .isEscapePossible( + new int[][] {{999998, 999999}, {999999, 999998}}, + new int[] {999999, 999999}, + new int[] {0, 0}), + equalTo(false)); + } + + @Test + void isEscapePossible8() { + assertThat( + new Solution() + .isEscapePossible( + new int[][] {{5, 5}, {5, 6}, {6, 5}}, + new int[] {5, 7}, + new int[] {6, 6}), + equalTo(true)); + } + + @Test + void isEscapePossible9() { + assertThat( + new Solution() + .isEscapePossible(new int[][] {{1, 2}}, new int[] {2, 2}, new int[] {2, 2}), + equalTo(true)); + } + + @Test + void isEscapePossible10() { + assertThat( + new Solution().isEscapePossible(new int[][] {}, new int[] {0, 0}, new int[] {0, 1}), + equalTo(true)); + } + + @Test + void isEscapePossible11() { + assertThat( + new Solution() + .isEscapePossible(new int[][] {{2, 2}}, new int[] {2, 1}, new int[] {2, 2}), + equalTo(true)); + } }