File tree Expand file tree Collapse file tree 3 files changed +78
-2
lines changed
solution/2200-2299/2232.Minimize Result by Adding Parentheses to Expression Expand file tree Collapse file tree 3 files changed +78
-2
lines changed Original file line number Diff line number Diff line change 77
77
### ** TypeScript**
78
78
79
79
``` ts
80
-
80
+ function minimizeResult(expression : string ): string {
81
+ const [n1, n2] = expression .split (' +' );
82
+ let minSum = Number .MAX_SAFE_INTEGER;
83
+ let ans = ' ' ;
84
+ let arr1 = [],
85
+ arr2 = n1 .split (' ' ),
86
+ arr3 = n2 .split (' ' ),
87
+ arr4 = [];
88
+ while (arr2 .length ) {
89
+ arr3 = n2 .split (' ' ), arr4 = [];
90
+ while (arr3 .length ) {
91
+ let cur = (getNum (arr2 ) + getNum (arr3 )) * getNum (arr1 ) * getNum (arr4 );
92
+ if (cur < minSum ) {
93
+ minSum = cur ;
94
+ ans = ` ${arr1 .join (' ' )}(${arr2 .join (' ' )}+${arr3 .join (' ' )})${arr4 .join (' ' )} ` ;
95
+ }
96
+ arr4 .unshift (arr3 .pop ());
97
+ }
98
+ arr1 .push (arr2 .shift ());
99
+ }
100
+ return ans ;
101
+ };
102
+
103
+ function getNum(arr : Array <string >): number {
104
+ return arr .length ? Number (arr .join (' ' )) : 1 ;
105
+ }
81
106
```
82
107
83
108
### ** ...**
Original file line number Diff line number Diff line change @@ -70,7 +70,32 @@ It can be shown that 170 is the smallest possible value.
70
70
### ** TypeScript**
71
71
72
72
``` ts
73
-
73
+ function minimizeResult(expression : string ): string {
74
+ const [n1, n2] = expression .split (' +' );
75
+ let minSum = Number .MAX_SAFE_INTEGER;
76
+ let ans = ' ' ;
77
+ let arr1 = [],
78
+ arr2 = n1 .split (' ' ),
79
+ arr3 = n2 .split (' ' ),
80
+ arr4 = [];
81
+ while (arr2 .length ) {
82
+ arr3 = n2 .split (' ' ), arr4 = [];
83
+ while (arr3 .length ) {
84
+ let cur = (getNum (arr2 ) + getNum (arr3 )) * getNum (arr1 ) * getNum (arr4 );
85
+ if (cur < minSum ) {
86
+ minSum = cur ;
87
+ ans = ` ${arr1 .join (' ' )}(${arr2 .join (' ' )}+${arr3 .join (' ' )})${arr4 .join (' ' )} ` ;
88
+ }
89
+ arr4 .unshift (arr3 .pop ());
90
+ }
91
+ arr1 .push (arr2 .shift ());
92
+ }
93
+ return ans ;
94
+ };
95
+
96
+ function getNum(arr : Array <string >): number {
97
+ return arr .length ? Number (arr .join (' ' )) : 1 ;
98
+ }
74
99
```
75
100
76
101
### ** ...**
Original file line number Diff line number Diff line change
1
+ function minimizeResult ( expression : string ) : string {
2
+ const [ n1 , n2 ] = expression . split ( '+' ) ;
3
+ let minSum = Number . MAX_SAFE_INTEGER ;
4
+ let ans = '' ;
5
+ let arr1 = [ ] ,
6
+ arr2 = n1 . split ( '' ) ,
7
+ arr3 = n2 . split ( '' ) ,
8
+ arr4 = [ ] ;
9
+ while ( arr2 . length ) {
10
+ arr3 = n2 . split ( '' ) , arr4 = [ ] ;
11
+ while ( arr3 . length ) {
12
+ let cur = ( getNum ( arr2 ) + getNum ( arr3 ) ) * getNum ( arr1 ) * getNum ( arr4 ) ;
13
+ if ( cur < minSum ) {
14
+ minSum = cur ;
15
+ ans = `${ arr1 . join ( '' ) } (${ arr2 . join ( '' ) } +${ arr3 . join ( '' ) } )${ arr4 . join ( '' ) } ` ;
16
+ }
17
+ arr4 . unshift ( arr3 . pop ( ) ) ;
18
+ }
19
+ arr1 . push ( arr2 . shift ( ) ) ;
20
+ }
21
+ return ans ;
22
+ } ;
23
+
24
+ function getNum ( arr : Array < string > ) : number {
25
+ return arr . length ? Number ( arr . join ( '' ) ) : 1 ;
26
+ }
You can’t perform that action at this time.
0 commit comments