From fbba108f0b7bcc20c898a759fe530c04e231cff4 Mon Sep 17 00:00:00 2001 From: Tahanima Chowdhury Date: Sat, 28 Aug 2021 16:36:23 +0600 Subject: [PATCH] Added cpp and java solution of leetcode 645 --- Algorithms/Easy/645_SetMismatch/Solution.cpp | 22 +++++++++++++++++++ Algorithms/Easy/645_SetMismatch/Solution.java | 20 +++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 Algorithms/Easy/645_SetMismatch/Solution.cpp create mode 100644 Algorithms/Easy/645_SetMismatch/Solution.java diff --git a/Algorithms/Easy/645_SetMismatch/Solution.cpp b/Algorithms/Easy/645_SetMismatch/Solution.cpp new file mode 100644 index 0000000..4debef3 --- /dev/null +++ b/Algorithms/Easy/645_SetMismatch/Solution.cpp @@ -0,0 +1,22 @@ +class Solution { +public: + vector findErrorNums(vector& nums) { + int n = nums.size(), sumXor = 0; + int mark[n + 1]; + memset(mark, 0, sizeof(mark)); + vector ans; + + for (int i = 0; i < n; i++) { + sumXor ^= nums[i] ^ (i + 1); + + if (mark[nums[i]] == 1) { + ans.push_back(nums[i]); + } + + mark[nums[i]]++; + } + + ans.push_back(sumXor ^ ans[0]); + return ans; + } +}; \ No newline at end of file diff --git a/Algorithms/Easy/645_SetMismatch/Solution.java b/Algorithms/Easy/645_SetMismatch/Solution.java new file mode 100644 index 0000000..6e20f13 --- /dev/null +++ b/Algorithms/Easy/645_SetMismatch/Solution.java @@ -0,0 +1,20 @@ +class Solution { + public int[] findErrorNums(int[] nums) { + int n = nums.length, sumXor = 0; + int mark[] = new int[n + 1]; + int ans[] = new int[2]; + + for (int i = 0; i < n; i++) { + sumXor ^= nums[i] ^ (i + 1); + + if (mark[nums[i]] == 1) { + ans[0] = nums[i]; + } + + mark[nums[i]]++; + } + + ans[1] = sumXor ^ ans[0]; + return ans; + } +} \ No newline at end of file