From 2e92a2fcfd36aad67aa2a314de715f71eadcade2 Mon Sep 17 00:00:00 2001 From: Mariano Spadaccini Date: Sat, 6 Apr 2024 17:57:26 +0200 Subject: Add ch-1 in Perl, Python, Ruby and Go --- challenge-263/spadacciniweb/python/ch-1.py | 48 ++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 challenge-263/spadacciniweb/python/ch-1.py (limited to 'challenge-263/spadacciniweb/python') diff --git a/challenge-263/spadacciniweb/python/ch-1.py b/challenge-263/spadacciniweb/python/ch-1.py new file mode 100644 index 0000000000..cec470dcac --- /dev/null +++ b/challenge-263/spadacciniweb/python/ch-1.py @@ -0,0 +1,48 @@ +# Task 1: Target Index +# Submitted by: Mohammad Sajid Anwar +# +# You are given an array of integers, @ints and a target element $k. +# Write a script to return the list of indices in the sorted array where the element is same as the given target element. +# +# Example 1 +# Input: @ints = (1, 5, 3, 2, 4, 2), $k = 2 +# Output: (1, 2) +# +# Sorted array: (1, 2, 2, 3, 4, 5) +# Target indices: (1, 2) as $ints[1] = 2 and $ints[2] = 2 +# +# Example 2 +# Input: @ints = (1, 2, 4, 3, 5), $k = 6 +# Output: () +# +# No element in the given array matching the given target. +# +# Example 3 +# Input: @ints = (5, 3, 2, 4, 2, 1), $k = 4 +# Output: (4) +# +# Sorted array: (1, 2, 2, 3, 4, 5) +# Target index: (4) as $ints[4] = 4 + +def list_of_indices(ints,k): + ints.sort() + + indexes = list(filter(lambda i: ints[i] == k, range(len(ints)))) + print("(%s) -> (%s)" % + ( ",".join(map(str, ints)), + ",".join(map(str, indexes)) + ) + ) + +if __name__ == "__main__": + ints = [1, 5, 3, 2, 4, 2] + k = 2 + list_of_indices(ints, k) + + ints = [1, 2, 4, 3, 5] + k = 6 + list_of_indices(ints, k) + + ints = [5, 3, 2, 4, 2, 1] + k = 4 + list_of_indices(ints, k) -- cgit