parent
b2df4ad5e5
commit
50d497a834
|
|
@ -227,6 +227,31 @@ var largestSumAfterKNegations = function(nums, k) {
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Rust
|
||||||
|
|
||||||
|
```Rust
|
||||||
|
impl Solution {
|
||||||
|
pub fn largest_sum_after_k_negations(nums: Vec<i32>, k: i32) -> i32 {
|
||||||
|
let mut nums = nums;
|
||||||
|
let mut k = k;
|
||||||
|
let len = nums.len();
|
||||||
|
nums.sort_by(|a, b| b.abs().cmp(&a.abs()));
|
||||||
|
for i in 0..len {
|
||||||
|
if nums[i] < 0 && k > 0 {
|
||||||
|
nums[i] *= -1;
|
||||||
|
k -= 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if k % 2 == 1 { nums[len - 1] *= -1; }
|
||||||
|
let mut result = 0;
|
||||||
|
for num in nums {
|
||||||
|
result += num;
|
||||||
|
}
|
||||||
|
result
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
### C
|
### C
|
||||||
```c
|
```c
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue