Programming Articles - Page 1925 of 3366

Kth Smallest Number in Multiplication Table in C++

Arnab Chakraborty
Updated on 01-Jun-2020 11:58:51

373 Views

Suppose we know about one Multiplication Table. But could we find out the k-th smallest number quickly from the multiplication table? So if we have to height m and the length n of a m * n Multiplication Table, and one positive integer k, we have need to find the k-th smallest number in this table.So if m = 3 and n = 3 and k is 6, then the output will be 4., this is because the multiplication table is like −1231123224633696th smallest element is 4 as [1, 2, 2, 3, 3, 4, 6, 6, 9]To solve this, we ... Read More

Strange Printer in C++

Arnab Chakraborty
Updated on 01-Jun-2020 11:56:58

283 Views

Suppose there is a strange printer It has some requirements −The printer can print only a sequence of the same character each time.In each turn, the printer can print new characters starting from and ending at any places, and will cover the original existing characters.So if we have a string consists of lower letters, our task is to count the minimum number of turns the printer needed in order to print it.So if the input is like “aaabba”, then it will take 2 turns, first prints aaaaa then b’s by replacing the characters.To solve this, we will follow these steps ... Read More

Decode Ways II in C++

Arnab Chakraborty
Updated on 01-Jun-2020 11:53:28

287 Views

Suppose there is a message, that is containing letters from A-Z is being encoded to numbers using the following mapping way −'A' -> 1, 'B' -> 2, ... , 'Z' -> 26Now, the encoded string can also contain the character '*', which can be treated as one of the numbers from 1 to 9. So if we have the encoded message containing digits and the character '*', then we have to find the total number of ways to decode it. If the answer is very long, we can use mod 109 + 7 to get the final result. So if ... Read More

Smallest Range Covering Elements from K Lists in C++

Arnab Chakraborty
Updated on 01-Jun-2020 11:49:49

298 Views

Suppose we have k lists of sorted integers. We have to search the smallest range that includes at least one number from each of the k lists. Here the range [a, b] is smaller than range [c, d] when b-a < d-c or a < c if b-a == d-c.So if the input is like [[4, 10, 15, 25, 26], [0, 9, 14, 20], [5, 18, 24, 30]], then the output will be [14, 18]To solve this, we will follow these steps −minRange := inf, maxRange := -inf, rangeSize := inf, tempMinRange := inf, tempMaxRange := -infn := size of ... Read More

K Inverse Pairs Array in C++

Arnab Chakraborty
Updated on 01-Jun-2020 11:47:00

298 Views

Suppose we have two integers n and k, we have to find how many different arrays consist of numbers from 1 to n such that there are exactly k inverse pairs. The inverse pair is for ith and jth element in the array, if i < j and a[i] > a[j] it is called an inverse pair. Here the answer may be very large, the answer should be modulo $10^{9}$ + 7.So if the input is like n = 3 and k = 1, then the output will be 2 as the arrays [1, 3, 2] and [2, 1, 3] ... Read More

Non-negative Integers without Consecutive Ones in C++

Arnab Chakraborty
Updated on 01-Jun-2020 11:42:46

369 Views

Suppose we have a positive integer n. We have to find the non-negative integers less than or equal to n. The constraint is that the binary representation will not contain consecutive ones. So if the input is 7, then the answer will be 5, as binary representation of 5 is 101.To solve this, we will follow these steps −Define a function convert(), this will take n, ret := empty stringwhile n is non-zero, do −ret := ret + (n mod 2)n := right shift n, 1 timereturn retFrom the main method, do the following −bits := call the function convert(num)n ... Read More

Find the Closest Palindrome in C++

Arnab Chakraborty
Updated on 01-Jun-2020 11:40:05

263 Views

Suppose we have a number n, we have to get the closest number that is palindrome. So the palindrome could be less than or greater than the number whose absolute difference is smaller. So if the number is like 145, then the result will be 141.To solve this, we will follow these steps −sn := size of nif sn is same as 1, then −decrease n[0] by 1 and return a string of 1s of size n[0]half_sn := (sn + 1) / 2half_val := stol(substring of n from index 0 to half_snDefine an array candidates = {10^(sn) – 1, 10^(sn ... Read More

Student Attendance Record II in C++

Arnab Chakraborty
Updated on 01-Jun-2020 11:37:19

555 Views

Suppose we have a positive integer n, we have to find the number of all possible attendance records with length n, which will be regarded as rewardable. As the answer may be very large, we will return it using mod 109 + 7.In the student attendance record the string can only contain the following three characters −'A' means absent.'L' means late.'P' means present.one attendance is treated as rewardable if it doesn't contain more than one 'A' (absent) or more than two continuous 'L' (late). So we have to find the maximum points.If the input is like 2, then the output ... Read More

Remove Boxes in C++

Arnab Chakraborty
Updated on 01-Jun-2020 11:35:07

211 Views

Suppose we have several boxes with different colors These colors are represented by different positive numbers. We can experience several rounds to remove boxes until there is no box left. In each round we can choose some continuous boxes with the same color (composed of k boxes, k >= 1), and remove them and get k*k points. So if the input is like − [1, 3, 2, 2, 2, 4, 4, 3, 1], then the output will be 21.Find the maximum points you can get.To solve this, we will follow these steps −Define a function solve(), this will take an ... Read More

Super Washing Machines in C++

Arnab Chakraborty
Updated on 01-Jun-2020 11:31:06

620 Views

Suppose we have n super washing machines on a row. Initially, each washing machine has some dresses or empty. Now, for each move, we can choose any m (1 ≤ m ≤ n) washing machines, and pass one dress of each washing machine to one of its adjacent washing machines at the same time. Suppose we have one integer array representing the number of dresses in each washing machine from left to right on the row, we should find the minimum number of moves to make all the washing machines have the same number of clothes. If it is not ... Read More

Advertisements