aboutsummaryrefslogtreecommitdiff
path: root/min_incr_arr_unique.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'min_incr_arr_unique.cpp')
-rw-r--r--min_incr_arr_unique.cpp32
1 files changed, 0 insertions, 32 deletions
diff --git a/min_incr_arr_unique.cpp b/min_incr_arr_unique.cpp
deleted file mode 100644
index 9121d48..0000000
--- a/min_incr_arr_unique.cpp
+++ /dev/null
@@ -1,32 +0,0 @@
-// 945. Minimum Increment to Make Array Unique
-#include "leetcode.h"
-
-/*
- * given an integer array 'nums'. in one move, you can pick an index 'i' where
- * '0 <= i < nums.length' and increment 'nums[i]' by 1. return the minimum
- * number of moves to make every value in 'nums' unique. the test cases are
- * generated so that the answer fits in a 32-bit integer.
- */
-
-class Solution {
-public:
- int minIncrementForUnique(vector<int> &nums) {
- int n = nums.size(), ans = 0;
- if (n < 2)
- return 0;
- sort(nums.begin(), nums.end());
- for (int i = 1; i < n; ++i)
- if (nums[i] <= nums[i - 1]) {
- ans += nums[i - 1] + 1 - nums[i];
- nums[i] = nums[i - 1] + 1;
- }
- return ans;
- }
-};
-
-int main() {
- Solution obj;
- vector<int> n1 = {1, 2, 2}, n2 = {3, 2, 1, 2, 1, 7};
- printf("%d\n", obj.minIncrementForUnique(n1)); // expect: 1
- printf("%d\n", obj.minIncrementForUnique(n2)); // expect: 6
-}