@@ -20,4 +20,52 @@ void maxSumOfSquares2() {
2020 void maxSumOfSquares3 () {
2121 assertThat (new Solution ().maxSumOfSquares (1 , 10 ), equalTo ("" ));
2222 }
23+
24+ @ Test
25+ void maxSumOfSquares4 () {
26+ // sum = 27 → nines = 3
27+ // places = 2 < 3 → should return ""
28+ String result = new Solution ().maxSumOfSquares (2 , 27 );
29+ assertThat (result , equalTo ("" ));
30+ }
31+
32+ @ Test
33+ void maxSumOfSquares5 () {
34+ // sum = 28 → nines = 3, remSum = 1
35+ // places = 3 == nines and remSum > 0 → should return ""
36+ String result = new Solution ().maxSumOfSquares (3 , 28 );
37+ assertThat (result , equalTo ("" ));
38+ }
39+
40+ @ Test
41+ void maxSumOfSquares6 () {
42+ // sum = 27 → nines = 3, remSum = 0
43+ // places = 3 == nines and remSum == 0 → should return "999"
44+ String result = new Solution ().maxSumOfSquares (3 , 27 );
45+ assertThat (result , equalTo ("999" ));
46+ }
47+
48+ @ Test
49+ void maxSumOfSquares7 () {
50+ // sum = 10 → nines = 1, remSum = 1
51+ // ans = "9" + "1" = "91", length = 2, places = 2 → no padding
52+ String result = new Solution ().maxSumOfSquares (2 , 10 );
53+ assertThat (result , equalTo ("91" ));
54+ }
55+
56+ @ Test
57+ void maxSumOfSquares8 () {
58+ // sum = 10 → nines = 1, remSum = 1
59+ // ans = "9" + "1" = "91", length = 2, places = 4 → add two zeros
60+ String result = new Solution ().maxSumOfSquares (4 , 10 );
61+ assertThat (result , equalTo ("9100" ));
62+ }
63+
64+ @ Test
65+ void maxSumOfSquares9 () {
66+ // sum = 5 → nines = 0, remSum = 5 → ans = "5"
67+ // places = 3 → add two zeros
68+ String result = new Solution ().maxSumOfSquares (3 , 5 );
69+ assertThat (result , equalTo ("500" ));
70+ }
2371}
0 commit comments