11package com .fishercoder ;
22
33import com .fishercoder .solutions ._377 ;
4+ import org .junit .Before ;
45import org .junit .BeforeClass ;
56import org .junit .Test ;
67
@@ -10,6 +11,7 @@ public class _377Test {
1011 private static _377 .Solution1 solution1 ;
1112 private static _377 .Solution2 solution2 ;
1213 private static _377 .Solution3 solution3 ;
14+ private static _377 .Solution4 solution4 ;
1315 private static int [] nums ;
1416 private static int target ;
1517
@@ -18,6 +20,14 @@ public static void setup() {
1820 solution1 = new _377 .Solution1 ();
1921 solution2 = new _377 .Solution2 ();
2022 solution3 = new _377 .Solution3 ();
23+ solution4 = new _377 .Solution4 ();
24+ }
25+
26+ @ Before
27+ public void setUp () throws Exception {
28+ //always have to reset these global variables before using it again
29+ solution2 .count = 0 ;
30+ solution4 .map .clear ();
2131 }
2232
2333 @ Test
@@ -27,6 +37,7 @@ public void test1() {
2737 assertEquals (7 , solution1 .combinationSum4 (nums , target ));
2838 assertEquals (7 , solution2 .combinationSum4 (nums , target ));
2939 assertEquals (7 , solution3 .combinationSum4 (nums , target ));
40+ assertEquals (7 , solution4 .combinationSum4 (nums , target ));
3041 }
3142
3243 @ Test
@@ -35,10 +46,21 @@ public void test2() {
3546 target = 32 ;
3647// assertEquals(39882198, solution1.combinationSum4(nums, target));//this results in MLE, so comment out
3748
38- solution2 .count = 0 ;//always have to reset this global variable to be zero before using it again
3949 assertEquals (39882198 , solution2 .combinationSum4 (nums , target ));
4050
4151 assertEquals (39882198 , solution3 .combinationSum4 (nums , target ));
52+
53+ assertEquals (39882198 , solution4 .combinationSum4 (nums , target ));
54+ }
55+
56+ @ Test
57+ public void test3 () {
58+ nums = new int []{9 };
59+ target = 3 ;
60+ assertEquals (0 , solution1 .combinationSum4 (nums , target ));
61+ assertEquals (0 , solution2 .combinationSum4 (nums , target ));
62+ assertEquals (0 , solution3 .combinationSum4 (nums , target ));
63+ assertEquals (0 , solution4 .combinationSum4 (nums , target ));
4264 }
4365
4466}
0 commit comments