Arnab Chakraborty

Arnab Chakraborty

3,768 Articles Published

Articles by Arnab Chakraborty

Page 225 of 377

Max Sum of Rectangle No Larger Than K in C++

Arnab Chakraborty
Arnab Chakraborty
Updated on 11-Mar-2026 187 Views

Suppose we have a 2D matrix, and an integer k. We have to find the max sum of a rectangle in the matrix, such that its sum is not greater than k. So, if the input is like −1010-32And k = 3, then the output will be 3, as the sum of marked rectangle is 3.To solve this, we will follow these steps −Define a function maxSumSubmatrix(), this will take one 2D array matrix and k, n := row number, m := column numberans := -inffor initialize l := 0, when l < m, update (increase l by 1), do ...

Read More

Insert Delete GetRandom O(1) - Duplicates allowed in C++

Arnab Chakraborty
Arnab Chakraborty
Updated on 11-Mar-2026 214 Views

Suppose, we want to make a data structure, that supports some operations, these operations must be preformed in O(1) amount of time. So let these operations are like −insert(x): insert x into the collectionremove(x): delete x from the collectiongetRandom(): This will find random element form that collection.To solve this, we will follow these steps −Make an array numsmake one map mDefine a function insert(), this will take val, ret := when val is not in minsert size of nums at the end of m[val]insert { val, size of m[val] – 1} pair at the end of numsreturn retDefine a function ...

Read More

Frog Jump in C++

Arnab Chakraborty
Arnab Chakraborty
Updated on 11-Mar-2026 2K+ Views

Suppose there is a frog that is crossing a river. The river is divided into x units and at each unit there may be a stone. The frog can jump on a stone, but not water. Here we have a list of stones' positions in sorted ascending order sequence, we have to check whether the frog is able to cross the river by landing on the last stone, or not. Initially, the frog is on the first stone and assume the first jump must be of 1 unit.When the frog's current jump was k units, then its next jump must ...

Read More

Split Array Largest Sum in C++

Arnab Chakraborty
Arnab Chakraborty
Updated on 11-Mar-2026 462 Views

Suppose we have an array of positive integers and one value m. We can divide this array into m number of contiguous subarrays. We have to devise an algorithm to minimize the largest sum among these m subarrays.So if the array is say [7, 2, 4, 10, 9], and m = 2, then the sum will be 19, as we can make two subarrays like [7, 2, 4] and [10, 9], then the subarray with largest sum is 19.To solve this, we will follow these steps −Define a function splitArray(), this will take an array v, m, n := size ...

Read More

K-th Smallest in Lexicographical Order in C++

Arnab Chakraborty
Arnab Chakraborty
Updated on 11-Mar-2026 828 Views

Suppose we have two values n and k. We have to find the lexicographically kth smallest integer in the range of 1 to n. So if the input is like n = 14 and k = 3, then the output will be 11, as the sequence will be [1, 10, 11, 12, 13, 14, 2, 3, 4, 5, 6, 7, 8, 9], then the kth number is 11.To solve this, we will follow these steps −Define a function findKthNumber(), this will take n, k,curr := 1(decrease k by 1)while k is non-zero, do −steps := call the function calcSteps(n, curr, curr + 1)if steps

Read More

Arithmetic Slices II - Subsequence in C++

Arnab Chakraborty
Arnab Chakraborty
Updated on 11-Mar-2026 298 Views

Suppose we have an array A, where N numbers are present. A subsequence slice of that array is any sequence of integers like (K0, K1, K2, … Kn) such that 0 = 2. So we have to return the number of arithmetic slices.So if the input is like [2, 4, 6, 8, 10], then the answer will be 7, as there are 7 arithmetic slices. [2, 4, 6], [2, 4, 10], [4, 6, 8], [6, 8, 10], [2, 4, 6, 8], [4, 6, 8, 10], [2, 4, 6, 8, 10], To solve this, we will follow these steps −ret := ...

Read More

Poor Pigs in C++

Arnab Chakraborty
Arnab Chakraborty
Updated on 11-Mar-2026 286 Views

Suppose there are 1000 buckets, one of them is poisonous, others are filled with water. They all look similar. If a pig drinks the poison it will die within 15 minutes. What will be the minimum amount of pigs that we need to find out the poisonous bucket within one hour?So now consider for the general case and devise an algorithm for this. So, the general case is that If there are n different buckets and a pig drinking poison will die within m minutes, how many pigs are needed to find poisonous bucket within p minutes? There is exactly ...

Read More

Concatenated Words in C++

Arnab Chakraborty
Arnab Chakraborty
Updated on 11-Mar-2026 261 Views

Suppose we have a list of words. These words are distinct. We have to devise an algorithm that will find all concatenated words in the give list of words. A concatenated word is actually a string that is comprised entirely of at least two shorter words in the given array.So if the words are like ["cow", "cows", "cowsgoatcows", "goat", "goatcowsgoat", "hippopotamuses", "deer", "deercowgoatcow"], then the output will be ["cowsgoatcows", "goatcowsgoat", "deercowgoatcow"]To solve this, we will follow these steps −Define a function isPresent(), this will take str, head, idx, an array dp, if idx >= size of str, then −return trueif ...

Read More

Largest Palindrome Product in C++

Arnab Chakraborty
Arnab Chakraborty
Updated on 11-Mar-2026 213 Views

Suppose we have input n, we have to find the largest palindrome that can be made using multiplication of two n digit numbers. As the numbers are very large, we can perform mod using 1337. So if the input is say 2, then the answer will be 987, 987 = (99*91) mod 1337 = 9009 mod 1337 = 987.To solve this, we will follow these steps −maxVal := 10^n – 1minVal := maxVal / 10for initialize h := maxVal, when h > minVal, update (decrease h by 1), do −left := h, right := 0for initialize i := h, when ...

Read More

Sliding Window Median in C++

Arnab Chakraborty
Arnab Chakraborty
Updated on 11-Mar-2026 1K+ Views

Suppose we have a list of numbers, and we have one window size k, we have to find the list of medians using sliding window manner. So, if the distribution is like below −Window PositionMedian13-1-35368113-1-35368-113-1-35368-113-1-35368313-1-35368513-1-353686Here we have considered the k is 3, and the result will be [1, -1, -1, 3, 5, 6]To solve this, we will follow these steps −Define one set arrDefine a function insert(), this will take x, insert x into arrDefine a function delete_(), this will take x, delete x from arr, if this existsDefine a function getMedian()n := size of arra := jump to n/2 ...

Read More
Showing 2241–2250 of 3,768 articles
« Prev 1 223 224 225 226 227 377 Next »
Advertisements