Given a number n and two digits a and b, we need to check if we can form a number using only digits a and b that divides n. This problem can be solved using recursion by generating all possible combinations of numbers formed using the given digits. For example, if n = 115, a = 3, b = 2, then the output will be True because 115 is divisible by 23, which is made of digits 2 and 3. Algorithm Steps To solve this problem, we will follow these steps − ... Read More
A factorial prime is a prime number that is either one less than or one more than a factorial of any positive integer. For example, 719 is a factorial prime because 719 = 6! - 1 = 720 - 1, where 6! = 720. In this article, we'll learn how to check if a given number N is a factorial prime in Python. What is a Factorial Prime? A factorial prime has the form n! ± 1, where: n! + 1 (one more than factorial) n! - 1 (one less than factorial) The ... Read More
Sometimes we need to check if a target number can be represented as a sum of two given integers A and B, where we can use each integer any number of times. This is a classic dynamic programming problem that can be solved using memoization. Problem Understanding Given a target number and two integers A and B, we need to determine if we can express the target as a linear combination of A and B with non-negative coefficients. For example, if target = 26, A = 5, and B = 7, we can achieve this as 26 = ... Read More
Stack and queue operations follow a specific order where elements must be pushed before they can be popped. Given a binary list where 1 represents a push operation and 0 represents a pop operation, we need to validate if the sequence of operations is possible without attempting to pop from an empty structure. Problem Understanding The key insight is that at any point during the operations, the number of pop operations cannot exceed the number of push operations. If we encounter more pops than pushes, we're trying to remove elements from an empty stack or queue, which is ... Read More
In seven-segment displays, only certain digits look the same when mirrored horizontally. We need to check if a number appears identical to its mirror image when displayed on such a device. The digits that look the same when mirrored in seven-segment displays are 0, 1, and 8. Other digits like 2, 3, 4, 5, 6, 7, 9 don't have symmetric mirror images. Understanding Seven-Segment Mirror Images .segment { fill: #333; stroke: none; } .text { font-family: ... Read More
When working with string analysis, we sometimes need to check if the most frequently occurring character in one string appears the same number of times in another string. This can be useful in text analysis and pattern matching scenarios. Problem Statement Given two strings s and t, we need to find the most frequent character in string s and check whether that character appears the same number of times in string t. For example, if s = "crosssection" and t = "securesystem", the most frequent character in s is 's' (appears 3 times). Since 's' also appears ... Read More
When working with matrices, sometimes we need to check if a matrix remains unchanged after reversing each row. This means checking if each row is a palindrome − reads the same forwards and backwards. For example, if we have a matrix like: 686 282 333 After reversing each row, we get the same matrix, so the output will be True. Algorithm To solve this problem, we follow these steps: Get the number of rows in the matrix For each row, use two pointers (left and right) Compare elements from ... Read More
Suppose we have two N X M matrices called mat1 and mat2. In an operation, we can transpose any square sub-matrix in mat1. We have to check whether we can get mat2 from mat1 or not by performing the given operation. The key insight is that transposing square sub-matrices preserves the elements along each diagonal. Elements that can be rearranged among themselves through transpositions must have the same sorted order in both matrices. Example Matrices Consider these input matrices ? Matrix 1 (mat1) 567 123 689 Matrix 2 (mat2) 562 173 689 ... Read More
Suppose we have two N X M binary matrices A and B. In a single operation, we can select a sub-matrix (at least 2x2) and flip the parity of its four corner elements (toggle bits 0↔1). We need to check whether matrix A can be converted to B by performing any number of such operations. Understanding the Problem When we select a 2x2 submatrix and flip its corners, we're essentially performing an XOR operation on four specific positions. The key insight is that we can systematically work through the matrix from bottom-right to top-left, fixing mismatches using operations ... Read More
Suppose we have a string with only lowercase or uppercase letters. We need to check whether both lowercase and uppercase letters follow the same order respectively. This means if we extract all lowercase letters and all uppercase letters separately, converting the lowercase sequence to uppercase should match the uppercase sequence. So, if the input is like s = "piPpIePE", then the output will be True, as the lowercase letters "piepe" when converted to uppercase become "PIEPE", which matches the extracted uppercase sequence "PIEPE". Algorithm To solve this, we follow these steps ? ... Read More
Data Structure
Networking
RDBMS
Operating System
Java
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Economics & Finance