+ 1

I need a solution

A school is trying to take an annual photo of all the students. The students are asked to stand in a single file line in non-decreasing order by height. Let this ordering be represented by the integer array expected where expected[i] is the expected height of the ith student in line. You are given an string with integer heights representing the current order that the students are standing in. Each heights[i] is the height of the ith student in line (0-indexed). Return the number of indices where heights[i] != expected[i]. Input Format The input format will be in string Constraints 1 <= heights.length <= 100 1 <= heights[i] <= 100 Output Format The output format will be in a integer Sample Input 0 114213 Sample Output 0 3 Explanation 0 heights: [1,1,4,2,1,3] expected: [1,1,1,2,3,4] Indices 2, 4, and 5 do not match. Sample Input 1 12345 Sample Output 1 0 Explanation 1 heights: [1,2,3,4,5] expected: [1,2,3,4,5] All indices match. Sample Input 2 51234 Sample Output 2 5

10th Nov 2022, 3:24 PM
Rajeshwari. S
Rajeshwari. S - avatar
4 Respuestas
+ 5
Rajeshwari. S , just some small modifications are needed: # if we take `114213` as input. a = list(map(int,list(input()))) # `split()` does not help to get digits from the number, we need `list()`. output is: [1, 1, 4, 2, 1, 3] ^^^^ #b = map(int,a) # not required res=sorted(a) # use var `a` (list) to create sorted list Output = [index for index, elem in enumerate(res) if elem != a[index]] print(len(Output ))
10th Nov 2022, 7:10 PM
Lothar
Lothar - avatar
+ 2
What have you tried? link us your code so we can help you out!
10th Nov 2022, 3:45 PM
Apollo-Roboto
Apollo-Roboto - avatar
10th Nov 2022, 3:50 PM
Rajeshwari. S
Rajeshwari. S - avatar
+ 2
Rajeshwari. S Input is a single word of digits. So input().split() does nothing.. Instead use list(input()) #list of characters.
10th Nov 2022, 7:17 PM
Jayakrishna 🇮🇳