From 255a3908acf764bce69f1906adfe3808735e99d5 Mon Sep 17 00:00:00 2001
From: ImmidiSivani <147423543+ImmidiSivani@users.noreply.github.com>
Date: Fri, 2 Aug 2024 08:46:13 +0530
Subject: [PATCH] solution added to 1005
---
...maximize-sum-of-array-after-k-negations.md | 161 ++++++++++++++++++
1 file changed, 161 insertions(+)
create mode 100644 dsa-solutions/lc-solutions/1000-1099/1005-maximize-sum-of-array-after-k-negations.md
diff --git a/dsa-solutions/lc-solutions/1000-1099/1005-maximize-sum-of-array-after-k-negations.md b/dsa-solutions/lc-solutions/1000-1099/1005-maximize-sum-of-array-after-k-negations.md
new file mode 100644
index 000000000..a44e2a077
--- /dev/null
+++ b/dsa-solutions/lc-solutions/1000-1099/1005-maximize-sum-of-array-after-k-negations.md
@@ -0,0 +1,161 @@
+---
+id: maximize-sum-of-array-after-k-negations
+title: Maximize Sum of Array After K Negations
+sidebar_label: 1005-Maximize Sum of Array After K Negations
+tags:
+ - Array
+ - Greedy
+ - LeetCode
+ - Java
+ - Python
+ - C++
+description: "This is a solution to the Maximize Sum After K Negations problem on LeetCode."
+sidebar_position: 20
+---
+
+## Problem Description
+
+Given an integer array `nums` and an integer `k`, modify the array in the following way:
+
+choose an index `i` and replace `nums[i]` with `-nums[i]`. You should apply this process exactly `k` times. You may choose the same index `i` multiple times.
+
+Return the largest possible sum of the array after modifying it in this way.
+
+### Examples
+
+**Example 1:**
+
+```
+Input: nums = [4,2,3], k = 1
+Output: 5
+Explanation: Choose index 1 and nums becomes [4,-2,3].
+```
+
+**Example 2:**
+
+```
+Input: nums = [3,-1,0,2], k = 3
+Output: 6
+Explanation: Choose indices (1, 2, 2) and nums becomes [3,1,0,2].
+```
+
+**Example 3:**
+
+```
+Input: nums = [2,-3,-1,5,-4], k = 2
+Output: 13
+Explanation: Choose indices (1, 4) and nums becomes [2,3,-1,5,4].
+```
+
+### Constraints
+
+- `1 <= nums.length <= 10^4`
+- `-100 <= nums[i] <= 100`
+- `1 <= k <= 10^4`
+
+---
+
+## Solution for Largest Sum After K Negations Problem
+
+To solve this problem, we should follow a greedy approach by repeatedly negating the smallest element in the array, as this will maximize the sum after `k` operations.
+
+### Approach
+
+1. **Sort the Array:**
+ - Sort the array to bring all the negative numbers to the front.
+
+2. **Negate the Minimum Element:**
+ - Iterate through the array and negate the smallest elements (negative numbers) first.
+ - If there are still operations left after negating all negative numbers, use the remaining operations on the smallest absolute value element.
+
+3. **Handle Remaining Operations:**
+ - If `k` is still greater than 0 after negating all negative numbers, continue to negate the smallest absolute value element until `k` becomes 0.
+
+### Code in Different Languages
+
+