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 305 of 377
Check if a number from every row can be selected such that xor of the numbers is greater than zero in C++
Suppose we have one 2D array of size N x M. The task is to check if we can select a number from every row, in such a way that the XOR of those elements is non-zero or greater than 0. Suppose one matrix is like this −77710107If we perform XOR, the answer will be non-zero, as the except last elements of two rows are 7 and 10To solve this problem, the solution will be very easy. Initially check if XOR of the elements of the first column of each row is 0 or not. If it is non-zero then ...
Read MoreCheck if a large number is divisible by 20 in C++
Here we will see how to check a number is divisible by 20 or not. In this case the number is very large number. So we put the number as string.A number will be divisible by 20, when that is divisible by 10, and after dividing 10, the remaining number is divisible by 2. So the case is simple. If the last digit is 0, then it is divisible by 10, and when it is divisible by 10, then the second last element is divisible by 2, the number is divisible by 20.Example#include using namespace std; bool isDiv20(string num){ ...
Read MoreCheck if a large number is divisible by 25 or not in C++
Here we will see how to check a number is divisible by 25 or not. In this case the number is very large number. So we put the number as string.A number will be divisible by 25, when the last two digits are 00, or they are divisible by 25.Example#include using namespace std; bool isDiv25(string num){ int n = num.length(); int last_two_digit_val = (num[n-2] - '0') * 10 + ((num[n-1] - '0')); if(last_two_digit_val % 25 == 0) return true; return false; } int main() { string num = "451851549333150"; if(isDiv25(num)){ cout
Read MoreSort an array according to count of set bits in C++
Here we will see one interesting problem to sort an array based on the set-bits. When an element in the array has higher number of set-bits, then that will be placed before another element which has lower number of set bits. Suppose some numbers are 12, 15, 7. So the set bits are basically number of 1’s in their binary representation. These are 1100 (12), 1111 (15), and 0111 (7). So after sorting it will be look like this −1111, 0111, 1100 (15, 7, 12)Here we have to find the number of set-bits at first. Then we will use the ...
Read MoreCheck if a large number is divisible by 3 or not in C++
Here we will see how to check a number is divisible by 3 or not. In this case the number is very large number. So we put the number as string.A number will be divisible by 3, if the sum of digits is divisible by 3.Example#include using namespace std; bool isDiv3(string num){ int n = num.length(); long sum = accumulate(begin(num), end(num), 0) - '0' * n; if(sum % 3 == 0) return true; return false; } int main() { string num = "3635883959606670431112222"; if(isDiv3(num)){ cout
Read MoreCheck if a large number is divisible by 5 or not in C++
Here we will see how to check a number is divisible by 5 or not. In this case the number is very large number. So we put the number as string.To check whether a number is divisible by 5, So to check divisibility by 5, we have to see the last number is 0 or 5.Example#include using namespace std; bool isDiv5(string num){ int n = num.length(); if(num[n - 1] != '5' && num[n - 1] != '0') return false; return true; } int main() { string num = "154484585745184258458158245285265"; if(isDiv5(num)){ cout
Read MoreCheck if a Binary Tree (not BST) has duplicate value in C++
Consider we have a binary tree, this binary tree is not a BST. We have to check whether the binary tree contains same element more than one time or not. To solve this, we will use hashing. We will traverse the given tree, for each node, we will check whether the node is present in the table or not, if that is already present, then return false, otherwise true.Example#include #include using namespace std; class Node { public: int data; Node *left; Node *right; }; Node* getNode(int data){ Node *newNode = new Node; ...
Read MoreCheck if a Binary Tree contains duplicate subtrees of size 2 or more in C++
Consider we have a binary tree. We have to find if there are some duplicate subtrees of size 2 or more in the tree or not. Suppose we have a binary tree like below −There are two identical subtrees of size 2. We can solve this problem by using tree serialization and hashing process. The idea is serializing the subtrees as string, and store them in hash table. Once we find a serialized tree which is not leaf, already exists in hash table, then return true.Example#include #include using namespace std; const char MARKER = '$'; struct Node { ...
Read MoreCheck if a large number is divisible by 75 or not in C++
Here we will see how to check a number is divisible by 75 or not. In this case the number is very large number. So we put the number as string.A number will be divisible by 75, when the number is divisible by 3 and also divisible by 25. if the sum of digits is divisible by 3, then the number is divisible by 3, and if last two digits are divisible by 25, then the number is divisible by 25.Example#include using namespace std; bool isDiv75(string num){ int n = num.length(); long sum = accumulate(begin(num), end(num), 0) ...
Read MoreCheck if a large number is divisible by 8 or not in C++
Here we will see how to check a number is divisible by 8 or not. In this case the number is very large number. So we put the number as string.A number will be divisible by 8, if the number formed by last three digits are divisible by 8.Example#include using namespace std; bool isDiv8(string num){ int n = num.length(); int last_three_digit_val = (num[n-3] - '0') * 100 + (num[n-2] - '0') * 10 + ((num[n-1] - '0')); if(last_three_digit_val % 8 == 0) return true; return false; } int main() { string num = "1754586672360"; if(isDiv8(num)){ cout
Read More