Suppose we have a number x. We have a six-faced dice and its faces are numbered from 2 to 7. We want exactly x points from the dice. When we throw the dice the face number will be added up to reach our target. We do not really care about the number of dice rolls, so we just want to know any number of rolls we can make to be able to get exactly x points for them. We are very lucky, so if the probability to get x points with chosen number of rolls is non-zero, we will be ... Read More
Suppose we have a string S with n lowercase letters. A string is called diverse if it has consecutive letters of the English alphabet and each letter occurs exactly once. (letters 'a' and 'z' are not adjacent). We have to check whether it is diverse or not.So, if the input is like S = "fced", then the output will be True.StepsTo solve this, we will follow these steps −sort the array S flag := 1 for initialize i := 1, when i < size of S and flag is non-zero, update (increase i by 1), do: if S[i] - ... Read More
Suppose we have three numbers y, b and r. There are y yellow ornaments, b blue ornaments and r red ornaments for decoration. A decoration will be beautiful, if the number of blue ornaments used is greater by exactly 1 than the number of yellow ornaments, and the number of red ornaments used is greater by exactly 1 than the number of blue ornaments. We want to choose as many ornaments as possible and also want to make our decoration good. We have to find the maximum number of ornaments used for a beautiful decoration.So, if the input is like ... Read More
Suppose we have a 2d array of size n x 4. Consider there are n students and their ids are starting from 0 to n-1. Each of them has four scores on English, Geography, Maths and History. In the table, the students will be sorted by decreasing the sum of their scores. If two or more students have the same sum, these students will be sorted by increasing their ids. We have to find the id of student whose id is 0.So, if the input is like10098100100100100100100909990100100986099then the output will be 2StepsTo solve this, we will follow these steps −n ... Read More
Suppose we have an array A with n elements, and another number H. H is health of an enemy. We have n weapons and damaging power of ith weapon is A[i]. Different weapons can be used to kill the enemy. We cannot use same weapon twice in a row. We have to count minimum how many times we can use weapons to kill the enemy.So, if the input is like A = [2, 1, 7]; H = 11, then the output will be 3, because if we use weapon with damage power 7, then use 2 then again use 7 ... Read More
Suppose we have as string S with even length n. S contains only two types of characters 'a' and 'b'. We want to modify the string so that every its prefix of its length has an equal amount of letters 'a' and 'b'. To achieve that, we can perform the following operation arbitrary number of times: Select some position in his string and replace the letter on this position with the other letter. Return the updated string.So, if the input is like S = "aabbbb", then the output will be "baabab"StepsTo solve this, we will follow these steps −n := ... Read More
Suppose we have an array A with n elements. Here n is even. A[i] is a number written on ith card. There are n/2 people who want to play a game. At the beginning, each player will take two cards. We have to find the way to distribute cards in such a way that sum of values written on the cards will be same for each player.So, if the input is like A = [1, 5, 7, 4, 4, 3], then the output will be [(0, 2), (5, 1), (3, 4)], because A[0] + A[2] = 8, A[5] + A[1] ... Read More
Suppose we have two arrays A and B with n number of elements. Consider an operation: Select two indices i and j, then decrease ith element by 1 and increase jth element by 1. Each element of the array must be non-negative after performing an operation. We want to make A and B same. We have to find the sequence of operations to make A and B same. If not possible, return -1.So, if the input is like A = [1, 2, 3, 4]; B = [3, 1, 2, 4], then the output will be [(1, 0), (2, 0)], because ... Read More
The Data Encryption Standard (DES) is a symmetric key block cipher which creates 64-bit plaintext and 56-bit key as an input and makes 64-bit cipher text as output. The DES function is create up of P and S-boxes. P-boxes transpose bits and S-boxes substitute bits to make a cipher.DES is a Feistel Block Cipher implementation, called a LUCIFER. It need a Feistel structure with 16 rounds, where a different key can be used for each round. The major reasons to understand DES (Data Encryption Standard) is that it forms the foundation for encryption algorithms. This creates it easy for one ... Read More
DES is a block cipher. The encryption procedure is create of two permutations (Pboxes) that it can be defined initial and final permutations, and 16 Feistel rounds. Each round need a different 48-bit round key created from the cipher key according to a pre-represented algorithm. The DES function uses a 48-bit key to the rightmost 32 bits (RI−1) to create a 32-bit output.There are two properties of DES which are as follows −Avalanche EffectAvalanche effect defines a small change in the plaintext (or key) should make an important change in the ciphertext. It can change in one bit of plaintext ... Read More
Data Structure
Networking
RDBMS
Operating System
Java
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP