From d154feebf5e93013b4a55fb6272fb3e884420cc0 Mon Sep 17 00:00:00 2001 From: Sandeep Pal Date: Fri, 18 Aug 2023 08:37:38 +0530 Subject: [PATCH 1/3] Update 001_Two_Sum.py --- 001_Two_Sum.py | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/001_Two_Sum.py b/001_Two_Sum.py index 1a16a00..92a5b46 100644 --- a/001_Two_Sum.py +++ b/001_Two_Sum.py @@ -1,17 +1,6 @@ class Solution: def twoSum(self, nums: List[int], target: int) -> List[int]: - # nums_index = list(enumerate(nums)) - # nums_index.sort() - # print(nums) for i in range(len(nums)): complement = target-nums[i] if complement in nums and nums.index(complement) != i: return [i,nums.index(complement)] - # for i in range(len(nums)-1): - # j=i+1 - # while j < len(nums): - # if nums[i]+nums[j]==target: - # return [i, j] - # j += 1 - # i += 1 - # return result From 3de525e54ea238acdc57ba8b4f16248ceecb0726 Mon Sep 17 00:00:00 2001 From: Sandeep Pal Date: Fri, 18 Aug 2023 08:45:42 +0530 Subject: [PATCH 2/3] Create 020_Valid_Parentheses.py --- 020_Valid_Parentheses.py | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 020_Valid_Parentheses.py diff --git a/020_Valid_Parentheses.py b/020_Valid_Parentheses.py new file mode 100644 index 0000000..3e3698f --- /dev/null +++ b/020_Valid_Parentheses.py @@ -0,0 +1,8 @@ +class Solution: + def isValid(self, s: str) -> bool: + while s: + if '{}' in s: s = s.replace('{}', '') + elif '[]' in s: s = s.replace('[]', '') + elif '()' in s: s = s.replace('()', '') + else: return False + return True From 8d8a0fd3d31755e342a37a50c6d87399b9292ec1 Mon Sep 17 00:00:00 2001 From: Sandeep Pal Date: Fri, 18 Aug 2023 08:51:08 +0530 Subject: [PATCH 3/3] Update 013_Roman_To_Integer.py --- 013_Roman_To_Integer.py | 56 ++++++++++++++++++++++++++++++----------- 1 file changed, 41 insertions(+), 15 deletions(-) diff --git a/013_Roman_To_Integer.py b/013_Roman_To_Integer.py index f65b778..96dfd4b 100644 --- a/013_Roman_To_Integer.py +++ b/013_Roman_To_Integer.py @@ -1,17 +1,43 @@ -#convert Roman to Integer class Solution: - # @param {string} s - # @return {integer} - def romanToInt(self, s): - roman = {'M': 1000,'D': 500 ,'C': 100,'L': 50,'X': 10,'V': 5,'I': 1} - - result = 0 - for i in range(len(s)-1): - if roman[s[i]] int: + roman = { + 'I':1, + 'V':5, + 'X':10, + 'L':50, + 'C':100, + 'D':500, + 'M':1000 + } + s=s.replace('IV', 'IIII').replace('IX','IIIIIIIII') + s=s.replace('XL', 'XXXX').replace('XC','XXXXXXXXX') + s=s.replace('CD', 'CCCC').replace('CM','CCCCCCCCC') + + L = [] + temp = s[0] + for i in range(1,len(s)): + if s[i] == s[i-1]: + temp += s[i] else: - result+=roman[s[i]] - else: - result+=roman[s[-1]] - - return result + L.append(temp) + temp = s[i] + if i == len(s)-1: + L.append(temp) + sum = 0 + for i in L: + print(i) + if i[0] == 'M': + sum += roman['M'] * len(i) + elif i[0] =='C': + sum += roman['C'] * len(i) + elif i[0] =='D': + sum += roman['D'] * len(i) + elif i[0] =='L': + sum += roman['L'] * len(i) + elif i[0] =='X': + sum += roman['X'] * len(i) + elif i[0] =='V': + sum += roman['V'] * len(i) + elif i[0] =='I': + sum += roman['I'] * len(i) + return sum