File tree Expand file tree Collapse file tree 2 files changed +22
-2
lines changed
main/java/io/github/imsejin/study/programmers/lv1
test/groovy/io/github/imsejin/study/programmers/lv1 Expand file tree Collapse file tree 2 files changed +22
-2
lines changed Original file line number Diff line number Diff line change 11
11
*/
12
12
public class L133502 {
13
13
14
- static int solve (int [] ingredient ) {
14
+ static int solve0 (int [] ingredient ) {
15
15
Ingredient [] ingredients = new Ingredient [ingredient .length ];
16
16
for (int i = 0 ; i < ingredient .length ; i ++) {
17
17
ingredients [i ] = Ingredient .from (ingredient [i ]);
@@ -43,6 +43,25 @@ static int solve(int[] ingredient) {
43
43
return count ;
44
44
}
45
45
46
+ static int solve1 (int [] ingredient ) {
47
+ if (ingredient .length < 4 ) return 0 ;
48
+
49
+ StringBuilder sb = new StringBuilder ();
50
+ for (int n : ingredient ) {
51
+ sb .append (n );
52
+ }
53
+
54
+ int count = 0 ;
55
+
56
+ int index ;
57
+ while ((index = sb .indexOf ("1231" )) >= 0 ) {
58
+ count ++;
59
+ sb .delete (index , index + 4 );
60
+ }
61
+
62
+ return count ;
63
+ }
64
+
46
65
// -------------------------------------------------------------------------------------------------
47
66
48
67
private enum Ingredient {
Original file line number Diff line number Diff line change @@ -6,10 +6,11 @@ class L133502Spec extends Specification {
6
6
7
7
def " test" () {
8
8
when :
9
- def actual = L133502 . solve (ingredient as int [])
9
+ def actual = L133502 . solve0 (ingredient as int [])
10
10
11
11
then :
12
12
actual == expected
13
+ actual == L133502 . solve1(ingredient as int [])
13
14
14
15
where :
15
16
ingredient | expected
You can’t perform that action at this time.
0 commit comments