From 43ba87df5e3aaa950fcf8ef55152105fe311276f Mon Sep 17 00:00:00 2001 From: Mohammad S Anwar Date: Tue, 20 Feb 2024 15:39:29 +0000 Subject: - Added solutions by Dave Jacoby. - Added solutions by Eric Cheung. - Added solutions by Mohammad Meraj Zia. - Added solutions by Mark Anderson. - Added solutions by Luca Ferrari. - Added solutions by Bob Lied. - Added solutions by Jaldhar H. Vyas. - Added solutions by David Ferrone. - Added solutions by Thomas Kohler. - Added solutions by Mariano Spadaccini. - Added solutions by PokGoPun. - Added solutions by Roger Bell_West. --- challenge-257/eric-cheung/python/ch-1.py | 9 ++++++++ challenge-257/eric-cheung/python/ch-2.py | 35 ++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+) create mode 100755 challenge-257/eric-cheung/python/ch-1.py create mode 100755 challenge-257/eric-cheung/python/ch-2.py (limited to 'challenge-257/eric-cheung/python') diff --git a/challenge-257/eric-cheung/python/ch-1.py b/challenge-257/eric-cheung/python/ch-1.py new file mode 100755 index 0000000000..5b438b92e1 --- /dev/null +++ b/challenge-257/eric-cheung/python/ch-1.py @@ -0,0 +1,9 @@ + +## arrInt = [5, 2, 1, 6] ## Example 1 +## arrInt = [1, 2, 0, 3] ## Example 2 +## arrInt = [0, 1] ## Example 3 +arrInt = [9, 4, 9, 2] ## Example 4 + +arrOutput = [len([arrInt[nColLoop] for nColLoop in range(len(arrInt)) if nColLoop != nRowLoop and arrInt[nColLoop] < arrInt[nRowLoop]]) for nRowLoop in range(len(arrInt))] + +print (arrOutput) diff --git a/challenge-257/eric-cheung/python/ch-2.py b/challenge-257/eric-cheung/python/ch-2.py new file mode 100755 index 0000000000..3b13af9e91 --- /dev/null +++ b/challenge-257/eric-cheung/python/ch-2.py @@ -0,0 +1,35 @@ + +## arrMatrix = [[1, 0, 0, 1], [0, 1, 0, 2], [0, 0, 1, 3]] +## arrMatrix = [[1, 1, 0], [0, 1, 0], [0, 0, 0]] ## Example 1 +## arrMatrix = [[0, 1, -2, 0, 1], [0, 0, 0, 1, 3], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]] ## Example 2 +## arrMatrix = [[1, 0, 0, 4], [0, 1, 0, 7], [0, 0, 1, -1]] ## Example 3 +## arrMatrix = [[0, 1, -2, 0, 1], [0, 0, 0, 0, 0], [0, 0, 0, 1, 3], [0, 0, 0, 0, 0]] ## Example 4 +## arrMatrix = [[0, 1, 0], [1, 0, 0], [0, 0, 0]] ## Example 5 +arrMatrix = [[4, 0, 0, 0], [0, 1, 0, 7], [0, 0, 1, -1]] ## Example 6 + +t_arrMatrix = [arrLoop for arrLoop in zip(*arrMatrix)] + +## print (t_arrMatrix) + +arrLead_1_Pos = [-1 if len([1 for arrColLoop in arrRowLoop if arrColLoop == 1]) == 0 else min([nIndx for nIndx, arrColLoop in enumerate(arrRowLoop) if arrColLoop == 1]) for arrRowLoop in arrMatrix] + +## print (arrLead_1_Pos) + +arrLead_1_Positive = [nLoop for nLoop in arrLead_1_Pos if nLoop >= 0] +arrLead_1_Pos_Positive = [nIndx for nIndx, nLoop in enumerate(arrLead_1_Pos) if nLoop >= 0] +arrLead_1_Pos_Negative = [nIndx for nIndx, nLoop in enumerate(arrLead_1_Pos) if nLoop < 0] + +## print (arrLead_1_Positive) +## print (arrLead_1_Pos_Positive) +## print (arrLead_1_Pos_Negative) + +bResult = (sorted(arrLead_1_Positive) == arrLead_1_Positive) +if bResult and len(arrLead_1_Pos_Negative) > 0: + bResult = (arrLead_1_Pos_Positive[-1] < arrLead_1_Pos_Negative[0]) +if bResult: + for arrLoop in t_arrMatrix[:-1]: + if sum([0 if rLoop == 0 else 1 for rLoop in arrLoop]) > 1: + bResult = False + break + +print (1 if bResult else 0) -- cgit