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 on Trending Technologies
Technical articles with clear explanations and examples
Predict the winner in Coin Game in C++
In this game, there are two players X and Y. our task is to predict who will win the game if both play optimally and X starts the game.GameIn the coin game, there are two piles with N and M number of coins. One of the players chooses any one of the piles for the game. Then the task is to divide the piles into two halves till any one player cannot further divide the piles.Let’s take an example to understand the problem, Input: M = 2 , N = 2 Output:XExplanation - X starts the game and choose M pile(both ...
Read MoreCoin Change 2 in C++
Suppose we have coins of different denominations and a total amount of money. we have to Write a module to compute the number of combinations that make up that amount. we can assume that we have infinite number of each kind of coin. So if the amount is 5 and coins are [1, 2, 5], then there are four combinations. (1+1+1+1+1), (1+1+1+2), (1+2+2), (5)To solve this, we will follow these steps −create one array dp of size amount + 1dp[0] := 1n := size of coins arrayfor i in range 0 to n – 1for j in range coins[i] to ...
Read MoreTask Scheduler n C++
Suppose we have a char array representing tasks CPU need to do. This contains uppercase letters A to Z where different letters represent different tasks. The tasks could be done without original order. Each task could be done in one interval. For each interval, CPU could finish one job or just be idle. However, there is a non-negative cooling interval called n that means between two same tasks, there must be at least n intervals that CPU are doing different tasks or just be idle. We have to find the least number of intervals the CPU will take to finish ...
Read MoreSingle Element in a Sorted Array in C++
Suppose we have a sorted array consisting of only integers where every element appears exactly twice, except for one element which appears exactly once. we have to find this single element that appears only once. So if the array is like [1, 1, 2, 3, 3, 4, 4, 8, 8], then the output will be 2To solve this, we will follow these steps −ans := 0for i in range 0 to nums array sizeans := ans XOR nums[i]return ansExample(C++)Let us see the following implementation to get a better understanding −#include using namespace std; class Solution { public: int ...
Read MoreSmallest Subtree with all the Deepest Nodes in C++
Suppose we have a binary tree rooted at root, the depth of each node is the shortest distance to the root. Here a node is deepest if it has the largest depth possible among any node in the entire tree. The subtree of a node is that node, plus the set of all descendants of that node. We have to find the node with the largest depth such that it contains all the deepest nodes in its subtree. So if the tree is like −Then the deepest subtree will be −To solve this, we will follow these steps −Define a ...
Read MoreSubarray Sum Equals K in C++
Suppose we have an array of integers and an integer k, we need to find the total number of continuous subarrays whose sum same as k. So if nums array is [1, 1, 1] and k is 2, then the output will be 2.To solve this, we will follow these steps −define one map called sums, temp := 0, sums[0] := 1 and ans := 0for i in range 0 to size of the arraytemp := temp + n[i]if sums has k – temp, thenans := ans + sums[k - temp]increase the value of sums[-temp] by 1return ansExample(C++)Let us see ...
Read MoreAll Possible Full Binary Trees in C++
Suppose a full binary tree is a binary tree where each node has exactly 0 or 2 children. So we have to find a list of all possible full binary trees with N nodes. Each node of each tree in the answer must have node.val = 0. The returned trees can be in any order. So if the input is 7, then the trees are −To solve this, we will follow these steps −Define a map m of integer type key and tree type value.define a method called allPossibleFBT(), this will take N as inputis N is 1, then create ...
Read MorePermutation in String in C++
Suppose we have two strings s1 and s2, we have to write a function to return true if s2 contains the permutation of s1. So we can say that one of the first string's permutations is the substring of the second string. So if the string s1 = “abc”, and second string s2 is “findcab”, then the result will be true, as the permutation of “abc” is true. That is “cab”.To solve this, we will follow these steps −create two vectors cnt1 and cnt2 of size 26for i in range 0 to s1increase the value of cnt1[s1[i] – ‘a’] by ...
Read MoreSum of Subarray Minimums in C++
Suppose we have an array of integers A. We have to find the sum of min(B), where B ranges over every (contiguous) subarray of A. Since the answer may be very large, then return the answer in modulo 10^9 + 7. So if the input is like [3, 1, 2, 4], then the output will be 17, because the subarrays are [3], [1], [2], [4], [3, 1], [1, 2], [2, 4], [3, 1, 2], [1, 2, 4], [3, 1, 2, 4], so minimums are [3, 1, 2, 4, 1, 1, 2, 1, 1, 1], and the sum is 17.To solve ...
Read MoreDelete Operations for Two Strings in C++
Suppose we have two words w1 and w2, we have to find the minimum number of steps required to make w1 and w2 the same, where in each step we can delete one character in either string. So if the input is like “sea” and “eat”, then the output will be 2, because we need to delete ‘s’ from w1, this will be “ea” and delete “t” from “eat” from w2. Then they are the same.To solve this, we will follow these stepsn := size of s1, m := size of s2add one blank space before the strings s1 and ...
Read More