Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #m = [.....]
- z = int(input("Enter z = "))
- found = False
- found_idx1 = None
- found_idx2 = None
- # Речник, който пази коя стойност на коя позиция е:
- r = {}
- for idx, value in enumerate(m):
- r[value] = idx
- for idx1, i in m:
- # diff е "допълващата" стойност, от която i се нуждае, така че i + diff да даде z
- diff = z - i
- if diff in m: # Проверяваме има ли такава допълваща стойност
- # Щом има такава стойност, намираме нейната позиция (с помощта на r)
- idx2 = r[diff]
- if idx1 != idx2:
- # Щом i и допълващата diff са на различни позиции, значи сме намерили търсеното
- found = True
- found_idx1 = idx1
- found_idx2 = idx2
- if found:
- print("m[{found_idx1}] + m[{found_idx2}] = {z}")
- else:
- print("No such pair found")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement