[1스4코2파] 1명의 스위프트 개발자와 4명의 코틀린 개발자, 2명의 파이썬 개발자코딩 테스트 서막 : 1스4코1파

Rule :

하루에 1문제씩 풀기.
한 문제당 30분씩은 고민하기.
왜 그렇게 풀었는지 공유하기.
하루라도 놓친다면 벌금은 1,000원
백준 플래티넘, 프로그래머스 4단계, 개발자 탈퇴 시 모임 탈퇴 가능

START :

[3코1파] 2023.01.04~ (142일차)
[4코1파] 2023.01.13~ (133일차)
[1스4코1파] 2023.04.12~ (44일차)
[1스4코2파] 2023.05.03 ~ (23일차)

Today :

2023.05.25 [142일차]
LeetCode Patterns
217. Contains Duplicate
https://leetcode.com/problems/contains-duplicate/
268. Missing Number
https://leetcode.com/problems/missing-number/

217. Contains Duplicate

문제 설명

문제 풀이 방법

주어진 리스트를 중복을 없애주는 자료구조 집합 set으로 바꿔서 그 길이를 기존의 리스트와 비교하여 True, False로 Return 함

내 코드

class Solution:
    def containsDuplicate(self, nums: List[int]) -> bool:
        return len(nums)!=len(set(nums))
        

증빙


268.

문제 설명

문제 풀이 방법

missing number가 없는 원래의 배열의 합 공식, 여기서는 등차수열의 합으로 구함 등차수열 합 공식 : (첫째항+마지막항) * 항의 개수 / 2
을 missing number가 있는 리스트 배열 합을 빼주면, missing number가 나옴

첨엔 다 돌면서 확인하는 O(N2)을 생각했지만 영 아닌 것 같아서
고민때리고 있었는데 옆자리 재호가 팁 줌 ㄳ

내 코드

class Solution:
    def missingNumber(self, nums: List[int]) -> int:
        return len(nums)*(len(nums)+1)//2 - sum(nums)  

증빙

여담

릿코드대법관 양재호 ㄳ~

profile
꿈꾸는 것도 개발처럼 깊게

0개의 댓글