오늘의 공부 키워드
2733 Neither Minimum nor Maximum
2733 Neither Minimum nor Maximum
문제 해석
주어진 정수 배열 nums에는 서로 다른 양의 정수가 포함되어 있습니다. 이 배열에서 최소값도 최대값도 아닌 수를 찾아 반환하는 문제입니다. 만약 그런 수가 없다면 -1을 반환해야 합니다.
예제 1:
- 입력: nums = [3,2,1,4]
- 출력: 2
- 설명: 이 예제에서 최소값은 1이고 최대값은 4입니다. 따라서 2나 3 중 하나가 유효한 답이 될 수 있습니다.
예제 2:
- 입력: nums = [1,2]
- 출력: -1
- 설명: 이 배열에서는 최소값도 최대값도 아닌 수가 없기 때문에 답이 없습니다.
예제 3:
- 입력: nums = [2,1,3]
- 출력: 2
- 설명: 2는 최소값도 최대값도 아니므로 유효한 답입니다.
코드
def find_number(nums):
if len(nums) <= 2:
return -1
min_value = min(nums)
max_value = max(nums)
for num in nums:
if num != min_value and num != max_value:
return num
return -1
풀이 방법
이 문제를 해결하기 위한 단계는 다음과 같습니다:
- nums 배열에서 최소값과 최대값을 찾습니다.
- 배열을 순회하면서 최소값도 최대값도 아닌 값을 찾습니다.
- 만약 그런 값이 있다면 해당 값을 반환하고, 없다면 -1을 반환합니다.
예제 실행
예제 1:
nums = [3,2,1,4]
print(find_number(nums)) # 출력: 2
예제 2
nums = [1,2]
print(find_number(nums)) # 출력: -1
예제3
nums = [2,1,3]
print(find_number(nums)) # 출력: 2
이 방법은 배열을 순회하면서 최소값과 최대값을 제외한 값을 찾는 간단한 논리로 문제를 해결합니다.
오늘의 회고
- 부족함을 느끼지만 실력을 늘리는것이 제일 빠른길임을 명심하자
- 새로운 개념을 배울수 있어서 좋았다.
- 생각보다 긴 코드라서 배우고 있는 입장에서 정말 어려웠다
'python' 카테고리의 다른 글
99클럽 코테 스터디 25일차 TIL (0) | 2024.06.22 |
---|---|
99클럽 코테 스터디 24일차 TIL (0) | 2024.06.21 |
99클럽 코테 스터디 22일차 TIL (0) | 2024.06.19 |
99클럽 코테 스터디 21일차 TIL (0) | 2024.06.18 |
99클럽 코테 스터디 20일차 TIL (0) | 2024.06.17 |