문제 설명
정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소 중 두 개를 곱해 만들 수 있는 최댓값을 return하도록 solution 함수를 완성해주세요.
제한사항
- 0 ≤ numbers의 원소 ≤ 10,000
- 2 ≤ numbers의 길이 ≤ 100
내가 푼 코드
def solution(numbers):
return max([a * b for a in numbers for b in numbers if a!=b])
max를 이용해 풀었는데 for 구문을 사용했더니 런타임 에러가 났다.
같은 팀원이 푼 코드
def solution(numbers):
answer = 0
numbers.sort(reverse=True)
answer = numbers[1]*numbers[0]
return answer
- 팀원은 reverse를 사용해 역순으로 정렬한 다음 계산하는 방식으로 풀었다.
내 코드에 비해 코드가 훨씬 깔끔하고, 런타임 에러도 나지 않았다.
'내일배움캠프' 카테고리의 다른 글
SMTPAuthenticationError (0) | 2023.05.11 |
---|---|
[TIL]Django 기초 (0) | 2023.04.06 |
[TIL]Django - VSCode Template 폴더 경로 설정하는 방법 (0) | 2023.04.04 |
[TIL]Django 실무 기초 - 프로젝트 세팅 (0) | 2023.04.03 |
[TIL]rpg게임 만들기 팀과제 (0) | 2023.04.03 |