Suppose we have a list of numbers called nums, we have to find the number of times that the list changes from positive-to-negative or negative-to-positive slope.So, if the input is like [2, 4, 10, 18, 6, 11, 13], then the output will be 2, as it changes the direction at 10 (positive-to-negative), and then at 6 (negative-to-positive).To solve this, we will follow these steps −To solve this, we will follow these steps −for i in range 1 to size of nums - 1, doif nums[i-1] < nums[i] > nums[i+1] or nums[i-1] > nums[i] < nums[i+1], thencount := count + 1return ... Read More
Suppose we have a list of numbers called cells; this list is representing sizes of different cells. Now, in each iteration, the two largest cells a and b interact according to these rules: So, If a = b, they both die. Otherwise, the two cells merge and their size becomes floor of ((a + b) / 3). We have to find the size of the last cell or return -1 if there's no cell is remaining.So, if the input is like [20, 40, 40, 30], then the output will be 16, in first iteration, 40 and 40 will die, then ... Read More
Suppose we have a list of words, we have to concatenate them in camel case format.So, if the input is like ["Hello", "World", "Python", "Programming"], then the output will be "helloWorldPythonProgramming"To solve this, we will follow these steps −s := blank stringfor each word in words −make first letter word uppercase and rest lowercaseconcatenate word with sret := s by converting first letter of s as lowercasereturn retLet us see the following implementation to get better understanding −Example Live Democlass Solution: def solve(self, words): s = "".join(word[0].upper() + word[1:].lower() for word in words) return ... Read More
Suppose we have a lowercase alphabet string s, and an offset number say k. We have to replace every letter in s with a letter k positions further along the alphabet. We have to keep in mind that when the letter overflows past a or z, it gets wrapped around the other side.So, if the input is like "hello", k = 3, then the output will be "khoor"To solve this, we will follow these steps −Define a function shift(). This will take ci := ASCII of (c) - ASCII of ('a')i := i + ki := i mod 26return character ... Read More
Suppose we have a list of prices of cars for sale, and we also have a budget k, we have to find the maximum number of cars we can buy.So, if the input is like [80, 20, 10, 30, 80], k = 85, then the output will be 3 as we can buy three cars with prices 20, 10, 40To solve this, we will follow these steps −count := 0sort the list pricesfor i in range 0 to size of prices, doif prices[i]
Suppose we have a binary list called fighters and another list of binary lists called bosses. In fighters list the 1 is representing a fighter. Similarly, in bosses list 1 representing a boss. That fighters can beat a boss’s row if it contains more fighters than bosses. We have to return a new bosses matrix with defeated boss rows removed.So, if the input is like fighters = [0,1,1]011000001011111then the output will be011111To solve this, we will follow these steps −fighter_cnt := sum of all elements of fightersresult := a new listfor each row in bosses, doif fighter_cnt
Suppose we have a list of strings called book, if we page an index (0-indexed) into the book, and page_size, we have to find the list of words on that page. If the page is out of index then simply return an empty list.So, if the input is like book = ["hello", "world", "programming", "language", "python", "c++", "java"] page = 1 page_size = 3, then the output will be ['language', 'python', 'c++']To solve this, we will follow these steps −l:= page*page_sizereturn elements of book from index l to l+page_size - 1Let us see the following implementation to get better understanding ... Read More
Suppose we have a friend named Bob, and he is playing a game with himself. He gives himself a list of numbers called nums. Now in each turn, Bob selects two elements of the list and replaces them with one positive integer with the same sum as the numbers he selected. Bob declares the victory when all of the number in the array are even. We have to find the minimum number of turns are required to make by Bob, so he can declare victory, if there is no such solution, then return -1.So, if the input is like [2, ... Read More
Suppose we have a matrix, we have to find the total number of integers whose value is the largest in its row and column.So, if the input is like132465157then the output will be 2 as 6 and 7 are valid.To solve this, we will follow these steps −mat := matrixr_maxes := make a list of max elements of each row of matc_maxes := make a list of max elements of each column of mata := a new listfor r in range 0 to number of rows - 1, dofor c in range 0 to number of columns - 1, dov ... Read More
Suppose we have a string s that is representing a number in base 3 (valid numbers 0, 1, or 2), we have to find its equivalent decimal integer.So, if the input is like "10122", then the output will be 98.To solve this, we will follow these steps −ans := 0for each digit c in s, doans := 3 * ans + creturn ansLet us see the following implementation to get better understanding −Example Live Democlass Solution: def solve(self, s): ans = 0 for c in map(int, s): ans = 3 * ans + c return ans ob = Solution() print(ob.solve("10122"))Input"10122"Output98