Article Categories
- All Categories
-
Data Structure
-
Networking
-
RDBMS
-
Operating System
-
Java
-
MS Excel
-
iOS
-
HTML
-
CSS
-
Android
-
Python
-
C Programming
-
C++
-
C#
-
MongoDB
-
MySQL
-
Javascript
-
PHP
-
Economics & Finance
Articles by Arnab Chakraborty
Page 168 of 377
Split Array into Consecutive Subsequences in C++
Suppose we have an array nums that is sorted in ascending order. We have to return true if and only if we can split it into 1 or more subsequences such that each subsequence consists of consecutive integers and whose length at least 3. So if the input is like [1, 2, 3, 3, 4, 4, 5, 5], then the output will be True, as we have two consecutive sequences. These are [1, 2, 3, 4, 5] and [3, 4, 5].To solve this, we will follow these steps −Make a map m and store the frequency of nums into m, ...
Read MoreStamping The Sequence in C++
Suppose we want to make a target string of lowercase letters.At first, we have the sequence as n '?' marks (n is the length of target string). We also have a stamp of lowercase letters.On each turn, we can place the stamp over the sequence, and replace every letter in the with the corresponding letter from that stamp. You can make up to 10 * n turns. As an example consider the initial sequence is "?????", and the stamp is "abc", then we may make strings like "abc??", "?abc?", "??abc" in the first turn.If the sequence is possible to stamp, ...
Read MoreKnight Probability in Chessboard in C++
Suppose we have one NxN chessboard, a knight starts at the r-th row and c-th column and attempts to make exactly K moves. Here the rows and columns are 0 indexed, so the top-left square is (0, 0), and the bottom-right square is (N-1, N-1).A knight can move in 8 different cells from a cell, that can be shown in this diagram −Each time the knight is to move, it chooses one of eight possible moves randomly. The knight continues moving until it has made exactly K moves or has moved off the chessboard. We have to find the probability ...
Read MoreMonotone Increasing Digits in C++
Suppose we have a non-negative integer N, we have to find the largest number that is less than or equal to N with monotone increasing digits. We know that an integer has monotone increasing digits if and only if each pair of adjacent digits’ x and y satisfy x = s[i – 1]increase i by 1if i < nwhile i > 0 and s[i – 1] > s[i], thendecrease i by 1decrease s[i] by 1for j in range i + 1 to ns[j] := ‘9’return s as numberLet us see the following implementation to get better understanding −Example#include using ...
Read MoreReach a Number in C++
Suppose you are standing at position 0 on an infinite number line. Now there is a goal at position target. Here in each move, you can either go to the left side or the right side. During the n-th move (starting from 1), you take n steps. We have to find the minimum number of steps required to reach the destination. So if the input is like target = 3, then we need 2 steps. From 0 to 1, from 1 to 3.To solve this, we will follow these steps −target := |target|, cnt := 0while target > 0, decrease ...
Read MoreGlobal and Local Inversions in C++
Suppose we have some permutation A of [0, 1, ..., N - 1], where N is the length of A. Now the number of (global) inversions is the number of i < j with 0 A[j]. And the number of local inversions is the number of i with 0 A[i+1]. We have to return true if and only if the number of global inversions is equal to the number of local inversions. So if the input is like [1, 0, 2], then return true, as there is only one local inversion and one global inversion.To solve this, we ...
Read MoreMerge k Sorted Lists in Python
Suppose we have some lists, these are sorted. We have to merge these lists into one list. To solve this, we will use the heap data structure. So if the lists are [1, 4, 5], [1, 3, 4], [2, 6], then the final list will be [1, 1, 2, 3, 4, 4, 5, 6].To solve this, we will follow these steps −make one heapfor each linked list l in lists −if is in not 0, then insert I into a heapres := null and res_next := nullDo one infinite loop −temp := min of heapif heap has no element, then ...
Read MoreK-th Symbol in Grammar in C++
Suppose on the first row, we have a 0. Now in every subsequent row, we look at the previous row and replace each occurrence of 0 by 01, and each occurrence of 1 by 10. Suppose we have N rows and index K, we have to find the K-th indexed symbol in row N. (The values of K are 1-indexed.) (1 indexed). So if N = 4 and K = 5, then the output will be 1. This is because −Row 1: 0Row 2: 01Row 3: 0110Row 4: 01101001To solve this, we will follow these steps −Suppose the name of ...
Read MoreRabbits in Forest in C++
Suppose In a forest, each rabbit has some color. Now some subset of rabbits (possibly all of them) will tell us how many other rabbits have the same color as them. Those answers are placed in an array. We have to find the minimum number of rabbits that could be in the forest. So if the input is like [1, 1, 2], then the output will be 5, as the two rabbits that answered "1" that could both be the same color, say white. Now the rabbit than answered "2" can't be white or the answers would be inconsistent. Say ...
Read MoreOdd Even Jump in C++
Suppose we have an array A. From some starting index, we can make a series of jumps. The position (1, 3, 5, ...) jumps in the series are called odd numbered jumps, and position (2, 4, 6, ...) jumps in the series are called even numbered jumps.Now we may from index i jump forward to index j (with i < j) in this way −During odd numbered jumps, we can jump to the index j such that A[i] = A[j] and A[j] is the largest possible value. When there are multiple such indexes j, we can only jump to the ...
Read More