Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

파이썬에서 K보다 작은 두 합


정수 배열 A가 있고 또 다른 정수 K가 주어진다고 가정합니다. A[i] + A[j] =S 및 S

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

  • res =- 1
  • A에 요소가 하나만 있으면 -1을 반환합니다.
  • 0에서 A
      까지의 범위에 있는 i에 대해
    • i + 1에서 A의 길이까지의 j에 대해
      • 온도 =A[i] + A[j]
      • temp
  • 반환 결과

예제(파이썬)

더 나은 이해를 위해 다음 구현을 살펴보겠습니다. −

class Solution(object):
   def twoSumLessThanK(self, A, K):
      ans = -1
      if len(A)==1:
         return -1
      for i in range(len(A)):
         for j in range(i+1,len(A)):
            temp = A[i]+ A[j]
            if temp<K:
               ans = max(ans,temp)
      return ans
ob1 = Solution()
print(ob1.twoSumLessThanK([34,23,1,24,75,33,54,8],60))

입력

[34,23,1,24,75,33,54,8]
60

출력

58