In this section we will discuss about interesting facts about virtual classes in C++. We will see two cases first, then we will analyze the fact.At first execute the program without using any virtual function.The execute the program using any virtual function under non-virtual function.ExampleLet us see the following implementation to get better understanding − Live Demo#include using namespace std; class BaseClass { public: void display(){ cout
Suppose we have three arrays A, B, C and another value called "sum", We have to check whether there are three elements a, b, c such that a + b + c = sum and a, b and c should be under three different arrays.So, if the input is like A = [2, 3, 4, 5, 6], B = [3, 4, 7, 2, 3], C = [4, 3, 5, 6, 7], sum = 12, then the output will be True as 4+2+6 = 12, and 4, 2, 6 are taken from A, B, C respectively.To solve this, we will follow ... Read More
Suppose we have an undirected graph of b number of nodes and a number of edges; we have to find minimum edges needed to build Euler Circuit in this graph.So, if the input is likethen the output will be 1.To solve this, we will follow these steps −Define a function dfs() . This will take g, visit, odd_vert, degree, comp, vvisit[v] := 1if degree[v] mod 2 is same as 1, thenodd_vert[comp] := odd_vert[comp] + 1for u in range 0 to size of g[v], doif visit[u] is same as 0, thendfs(g, visit, odd_vert, degree, comp, u)From the main method do the ... Read More
Suppose we have one binary string representing the scores of a volleyball match, we have to find the winner of the match based on following conditions −There are two teams play with each other and the team which scores 15 points first will be the winner except when both teams have reached to 14 points.When both teams have reached 14 points at that time the team maintaining a lead of two points will be the winner.From the given binary string, the 0 is representing team lose a point and 1 indicates team win a point. We have to check whether ... Read More
Suppose we have an array A of positive integers, the elements are unique, now, two players P and Q are playing a game. At each move, any one player picks two numbers a and b from the array and if |a – b| is not in the array after that the player adds this number to the array. When a player cannot make the move loses the game. We have to find the winner of the game if player P always starts the game.So, if the input is like A = [8, 9, 10], then the output will be P.To ... Read More
Suppose we have one A x B chessboard (matrix), we have to calculate the maximum numbers of cuts that we can make in this board so that the board is not divided into 2 parts.So, if the input is like A = 2 and B = 4, then the output will be 3To solve this, we will follow these steps −res := 0res :=(M - 1) *(N - 1)return resExampleLet us see the following implementation to get better understanding − Live Demodef max_cuts_count(M, N): res = 0 res = (M - 1) * (N - 1) return res ... Read More
Suppose we have given function like f(x) = (x^6 + x^2 + 9894845) % 971, now for a given value of x, we have to find the value of f(x).So, if the input is like 5, then the output will be 469To solve this, we will follow these steps −Define a function power_mod(), this will take base, exponent, modulus, base := base mod modulusresult := 1while exponent > 0, do −if exponent is odd, then −result := (result * base) mod modulusbase := (base * base) mod modulusexponent = exponent /2return resultFrom the main method do the following −return power_mod(n, ... Read More
Suppose we have a board of length p and width q; we have to break this board into p*q number of squares such that cost of breaking is as minimum as possible. Cutting cost for each edge will be given.So, if the input is like X_slice = [3, 2, 4, 2, 5], Y_slice = [5, 2, 3]then the output will be 65To solve this, we will follow these steps −res := 0horizontal := 1, vertical := 1i := 0, j := 0while i < m and j < n, doif X_slice[i] > Y_slice[j], thenres := res + X_slice[i] * verticalhorizontal ... Read More
Suppose we have a string s that represents a time in the 24 hours format as HH:MM so that HH will be in range 0 to 23 and MM will be in range 0 to 59, We have to find the next closest time which is a palindrome when read as a string. If there is no such string, then return -1.So, if the input is like "22:22", then the output will be "23:32".To solve this, we will follow these steps −n := size of shour_string := substring of s[from index 0 to 2]minute := substring of s[from index 3 ... Read More
Suppose we have a 2D array. Where each cell of which consists number cost which represents a cost to visit through that cell, we have to find a path from top-left cell to bottom-right cell by which total cost consumed is minimum.So, if the input is like32101661319111448158710111141751234891254221141100331124221then the output will be 340 as (32 + 11 + 14 + 48 + 66 + 13 + 19 + 7 + 34 + 12 + 21 + 42 + 21) = 340To solve this, we will follow these steps −Define cell with x, y coordinate and distance parameter.Define an array matrix of ... Read More
Data Structure
Networking
RDBMS
Operating System
Java
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP