Skip to content

Commit c2eee95

Browse files
committed
feat: add solutions to lc problem: No.2567
No.2567.Minimum Score by Changing Two Elements
1 parent 185a247 commit c2eee95

File tree

5 files changed

+114
-0
lines changed

5 files changed

+114
-0
lines changed

solution/2500-2599/2567.Minimum Score by Changing Two Elements/README.md

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,49 @@ func min(a, b int) int {
133133
}
134134
```
135135

136+
### **TypeScript**
137+
138+
```ts
139+
function minimizeSum(nums: number[]): number {
140+
nums.sort((a, b) => a - b);
141+
const n = nums.length;
142+
return Math.min(
143+
nums[n - 3] - nums[0],
144+
nums[n - 2] - nums[1],
145+
nums[n - 1] - nums[2],
146+
);
147+
}
148+
```
149+
150+
### **Rust**
151+
152+
```rust
153+
impl Solution {
154+
pub fn minimize_sum(mut nums: Vec<i32>) -> i32 {
155+
nums.sort();
156+
let n = nums.len();
157+
(nums[n - 1] - nums[2])
158+
.min(nums[n - 2] - nums[1])
159+
.min(nums[n - 3] - nums[0])
160+
}
161+
}
162+
```
163+
164+
### **C**
165+
166+
```c
167+
#define min(a, b) (((a) < (b)) ? (a) : (b))
168+
169+
int cmp(const void *a, const void *b) {
170+
return *(int *) a - *(int *) b;
171+
}
172+
173+
int minimizeSum(int *nums, int numsSize) {
174+
qsort(nums, numsSize, sizeof(int), cmp);
175+
return min(nums[numsSize - 1] - nums[2], min(nums[numsSize - 2] - nums[1], nums[numsSize - 3] - nums[0]));
176+
}
177+
```
178+
136179
### **...**
137180
138181
```

solution/2500-2599/2567.Minimum Score by Changing Two Elements/README_EN.md

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,49 @@ func min(a, b int) int {
104104
}
105105
```
106106

107+
### **TypeScript**
108+
109+
```ts
110+
function minimizeSum(nums: number[]): number {
111+
nums.sort((a, b) => a - b);
112+
const n = nums.length;
113+
return Math.min(
114+
nums[n - 3] - nums[0],
115+
nums[n - 2] - nums[1],
116+
nums[n - 1] - nums[2],
117+
);
118+
}
119+
```
120+
121+
### **Rust**
122+
123+
```rust
124+
impl Solution {
125+
pub fn minimize_sum(mut nums: Vec<i32>) -> i32 {
126+
nums.sort();
127+
let n = nums.len();
128+
(nums[n - 1] - nums[2])
129+
.min(nums[n - 2] - nums[1])
130+
.min(nums[n - 3] - nums[0])
131+
}
132+
}
133+
```
134+
135+
### **C**
136+
137+
```c
138+
#define min(a, b) (((a) < (b)) ? (a) : (b))
139+
140+
int cmp(const void *a, const void *b) {
141+
return *(int *) a - *(int *) b;
142+
}
143+
144+
int minimizeSum(int *nums, int numsSize) {
145+
qsort(nums, numsSize, sizeof(int), cmp);
146+
return min(nums[numsSize - 1] - nums[2], min(nums[numsSize - 2] - nums[1], nums[numsSize - 3] - nums[0]));
147+
}
148+
```
149+
107150
### **...**
108151
109152
```
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
#define min(a, b) (((a) < (b)) ? (a) : (b))
2+
3+
int cmp(const void *a, const void *b) {
4+
return *(int *) a - *(int *) b;
5+
}
6+
7+
int minimizeSum(int *nums, int numsSize) {
8+
qsort(nums, numsSize, sizeof(int), cmp);
9+
return min(nums[numsSize - 1] - nums[2], min(nums[numsSize - 2] - nums[1], nums[numsSize - 3] - nums[0]));
10+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
impl Solution {
2+
pub fn minimize_sum(mut nums: Vec<i32>) -> i32 {
3+
nums.sort();
4+
let n = nums.len();
5+
(nums[n - 1] - nums[2])
6+
.min(nums[n - 2] - nums[1])
7+
.min(nums[n - 3] - nums[0])
8+
}
9+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
function minimizeSum(nums: number[]): number {
2+
nums.sort((a, b) => a - b);
3+
const n = nums.length;
4+
return Math.min(
5+
nums[n - 3] - nums[0],
6+
nums[n - 2] - nums[1],
7+
nums[n - 1] - nums[2],
8+
);
9+
}

0 commit comments

Comments
 (0)