Skip to content

Commit c96911b

Browse files
authored
feat: add ts solution to lc problem: No.2208 (#1294)
1 parent 189349e commit c96911b

File tree

3 files changed

+48
-2
lines changed

3 files changed

+48
-2
lines changed

solution/2200-2299/2208.Minimum Operations to Halve Array Sum/README.md

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,22 @@ func (hp) Pop() (_ interface{}) { return }
158158
### **TypeScript**
159159

160160
```ts
161-
161+
function halveArray(nums: number[]): number {
162+
let s: number = nums.reduce((a, b) => a + b) / 2;
163+
const h = new MaxPriorityQueue();
164+
for (const v of nums) {
165+
h.enqueue(v, v);
166+
}
167+
let ans: number = 0;
168+
while (s > 0) {
169+
let { element: t } = h.dequeue();
170+
t /= 2;
171+
s -= t;
172+
h.enqueue(t, t);
173+
ans += 1;
174+
}
175+
return ans;
176+
}
162177
```
163178

164179
### **...**

solution/2200-2299/2208.Minimum Operations to Halve Array Sum/README_EN.md

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,22 @@ func (hp) Pop() (_ interface{}) { return }
150150
### **TypeScript**
151151

152152
```ts
153-
153+
function halveArray(nums: number[]): number {
154+
let s: number = nums.reduce((a, b) => a + b) / 2;
155+
const h = new MaxPriorityQueue();
156+
for (const v of nums) {
157+
h.enqueue(v, v);
158+
}
159+
let ans: number = 0;
160+
while (s > 0) {
161+
let { element: t } = h.dequeue();
162+
t /= 2;
163+
s -= t;
164+
h.enqueue(t, t);
165+
ans += 1;
166+
}
167+
return ans;
168+
}
154169
```
155170

156171
### **...**
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
function halveArray(nums: number[]): number {
2+
let s: number = nums.reduce((a, b) => a + b) / 2;
3+
const h = new MaxPriorityQueue();
4+
for (const v of nums) {
5+
h.enqueue(v, v);
6+
}
7+
let ans: number = 0;
8+
while (s > 0) {
9+
let { element: t } = h.dequeue();
10+
t /= 2;
11+
s -= t;
12+
h.enqueue(t, t);
13+
ans += 1;
14+
}
15+
return ans;
16+
}

0 commit comments

Comments
 (0)