Athlete sort

 

Athlete Sort

You are given a spreadsheet that contains a list of  athletes and their details (such as age, height, weight and so on). You are required to sort the data based on the thattribute and print the final resulting table. Follow the example given below for better understanding. 

image

Note that  is indexed from  to , where  is the number of attributes. 

Note: If two attributes are the same for different rows, for example, if two atheletes are of the same age, print the row that appeared first in the input.

Input Format

The first line contains  and  separated by a space. 
The next  lines each contain  elements. 
The last line contains 

Constraints

 
 
Each element 

Output Format

Print the  lines of the sorted table. Each line should contain the space separated elements. Check the sample below for clarity. 

Sample Input 0

5 3
10 2 5
7 1 0
9 9 9
1 23 12
6 5 9
1

Sample Output 0

7 1 0
10 2 5
6 5 9
9 9 9
1 23 12

Explanation 0

The details are sorted based on the second attribute, since  is zero-indexed.

CODE:

import math

import os

import random

import re

import sys





nm = input().split()


n = int(nm[0])


m = int(nm[1])


arr = []


for _ in range(n):

    arr.append(list(map(int, input().rstrip().split())))


k = int(input())

print(arr)

b=1000

f_arr=[]

l_arr=[]

#[[10, 2, 5], [7, 1, 0], [9, 9, 9], 

# [1, 23, 12], [6, 5, 9]]

# for i in range(n):

#     if arr[i][k]<=b:

#             b=arr[i][k]

#             f_arr.insert(0,arr[i])

for i in range(n):

    f_arr.append(arr[i][k])

    f_arr.sort()


for i in range(len(f_arr)):

    for j in range(n):

        if f_arr[i]==arr[j][k] and (arr[j] not in l_arr) :

            l_arr.append(arr[j])



print(l_arr)

for i in l_arr:

    for j in i:

        print(j,end=' ')

    print()

OTHER CODE:

nm = input().split()
    n = int(nm[0])
    m = int(nm[1])

    arr = []

    for _ in range(n):
        arr.append(list(map(int, input().rstrip().split())))
    k = int(input())

    # Athlete Sort in python - Hacker Rank Solution START   
    arr.sort(key = lambda x : x[k])
    for i in arr:
        print(*i,sep=' ')
    # Athlete Sort in python - Hacker Rank Solution END

Comments

Popular posts from this blog