
961. N-Repeated Element in Size 2N Array
처음에는 Counter()를 사용해서 풀려고 시도했다.
그러나 value를 통해 key를 찾는 방법이 바로 기억나지 않아서 다시 순회를 하는 바람에 늦어졌다.
시간복잡도는 이다.
class Solution: # LeetCode 제출 형식에 맞춘 Solution 클래스 정의
def repeatedNTimes(self, nums: List[int]) -> int: # 2N 배열에서 N번 반복되는 원소를 찾는 함수
cnt = Counter(nums) # 배열의 각 원소 등장 횟수를 해시맵(Counter)로 계산
n = len(nums) // 2 # 전체 길이의 절반 N을 계산하여 목표 반복 횟수로 설정
for k, v in cnt.items(): # 각 원소(k)와 그 등장 횟수(v)를 순회
if v == n: # 등장 횟수가 정확히 N인 원소인지 확인
return k # 조건을 만족하는 원소를 즉시 반환

결국 특정 숫자만 반복되므로 두 번 이상 나오는 숫자를 바로 반환하면 되었다.
class Solution:
def repeatedNTimes(self, a: List[int]) -> int:
d={}
for i in a:
if i in d:
return i
d[i]=1

쉬운 문제였지만 문제를 더 깊이 읽지 않아서 생긴 문제였다.
문제를 잘 읽어보자.