본문으로 바로가기

Daim's blog

네비게이션

  • 홈으로
  • 블로그소개
관리자
  • 블로그 이미지
    다임하게

    파이썬으로 다양한 알고리즘 문제를 풀고 정리하는 공간입니다 : )

    링크추가
  • 글쓰기
  • 환경설정
  • 로그인
  • 로그아웃

Python으로 푸는 LeetCode 744. Find Smallest Letter Greater Than Target (Easy)

주어진 문자보다 가장 처음으로 큰 숫자를 찾아 반환하는 코드를 짜시오 LeetCode에서 푼 문제 리스트 보기 LeetCode에서 문제 보기 github에서 코드 보기 문제 풀이 주어진 문자보다 가장 처음으로 큰 숫자를 반환하여야 한다. 단, 주어진 문자가 주어진 문자리스트의 모든 문자보다 클 경우에는 list의 가장 처음 문자를 반환하면 된다. "Letters also wrap around" 라는 문제 조건이 있기 때문이다. 파이썬 코드 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 class Solution: def nextGreatestLetter(self, letters, target: str) -> str: target = ord(target) for letter i..

온라인 코딩 테스트 문제 풀이/LeetCode 문제 풀이 2019. 5. 15. 23:30

Python으로 푸는 LeetCode 917. Reverse Only Letters (Easy)

알파벳이 아닌 문자(-,!,? 등등)를 제외한 알파벳 문자를 뒤집어서 반환하는 코드를 짜시오. LeetCode에서 푼 문제 리스트 보기 LeetCode에서 문제 보기 Github에서 코드 보기 문제 풀이 문제를 푸는 방법은 다양하다. 처음 풀었던 방식은 문자열의 맨앞(start_index)와 맨뒤(last_index)의 index를 하나하나 확인하면서 앞뒤 모두 알파벳 문자열인 경우에만 두 자리를 바꿔주는 방법이다. 방법 1. 포인터를 이동하며 문자열 교환 만약 알파벳이 아니라면 index를 낮추거나 높여서 가리키고 있는 index를 문자열의 가운데로 점점 이동하며 문자열을 바꿔준다. start_index와 last_index가 서로 만나면 문자열 교환을 중지하고 str()으로 변환하여 결과값을 반환한다..

온라인 코딩 테스트 문제 풀이/LeetCode 문제 풀이 2019. 5. 6. 23:40

Python으로 푸는 LeetCode. 942. DI String Match (Easy)

문제의 조건에 따라 완성한 list를 반환한다. LeetCode에서 푼 문제 리스트 보기 LeetCode에서 문제 보기 github에서 코드 보기 문제 조건 인자값으로 "I"와 "D"로만 구성된 문자열 S를 받는다. N은 S의 길이 값이다. 반환해야 하는 결과값인 리스트 A는 0~N까지의 구성된 원소들로 구성되어 있다. 단, 그 원소들의 순서는 다음과 같은 조건으로 정해진다. 문자열 S의 문자열이 "I"(Increase)이고 그 Index가 1이면 Index 1번째의 리스트 A의 원소는 그 다음번에 나타날 원소들 보다 가장 작아야 한다. 문자열 S의 문자열이 "D"이고 그 Index가 2이면 Index 2번째 리스트 A의 원소는 그 다음버넹 나타날 원소들보다 가장 커야 한다. 문제 풀이 이미 주어진 조건..

온라인 코딩 테스트 문제 풀이/LeetCode 문제 풀이 2019. 5. 4. 19:00

Python으로 푸는 LeetCode 832. Flipping an Image (Easy)

주어진 2차원 배열의 원소를 각각 뒤집고, 1을 0으로 0을 1로 변환시키는 코드를 짜시오. LeetCode에서 푼 문제 리스트 보기 LeetCode에서 문제 보기 github에서 코드 보기 문제 풀이 Python의 reverse() 메소드를 사용하여 주어진 리스트 자체를 뒤집을 수 있다. (reversed()를 사용하면 새로운 리스트로 반환됨) 그 다음 리스트의 원소인 작은 리스트를 순회하면서 1을 0으로 0을 1로 바꿔주면 된다. 파이썬 코드 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 class Solution: def flipAndInvertImage(self, A): """ Rumtime : faster than 74.47% of Python3 Memory Usage : le..

온라인 코딩 테스트 문제 풀이/LeetCode 문제 풀이 2019. 4. 18. 16:00

Python으로 푸는 LeetCode 27. Remove Element (Easy)

배열의 위치를 변경하지 않고 기존의 배열의 원소들 중에 특정 원소를 삭제한다. (in-place algorithmn으로 구현) 반환하는 값은 아무 값이어도 상관 없다. LeetCode에서 푼 문제 리스트 보기 LeetCode에서 문제 보기 github에서 코드 보기 문제 풀이 지난 문제(LeetCode 26. Remove Duplicates from Sorted Array (Easy))와 유사하다. 이번에는 값을 삭제하게 되면서 배열의 길이의 변동이 있다는 점이 다르다. 이 문제가 어렵지는 않지만, 내가 자주 사용하는 numerate() 메소드가 새로운 객체로 반환하는지 결과값은 같으나 Wrong Answer이라고 떴다. 생각해보니 Python의 enumerate()는 index의 값을 추가해서 객체를 ..

온라인 코딩 테스트 문제 풀이/LeetCode 문제 풀이 2019. 4. 4. 23:00

Python으로 푸는 LeetCode 13. Roman to Integer (Easy)

이 문제에서는 로마자 숫자를 10진수의 숫자로 변경하는 프로그램을 짜야한다. LeetCode에서 푼 문제 리스트 보기 LeetCode에서 문제 보기 Github에서 코드 보기 문제 풀이 로마자를 어떤 숫자로 변환해야 하는지는 이미 조건으로 주어졌다. 단, 다음의 경우에 대해서는 예외처리는 해주어야 한다. {"IV" : 4, "IX" : 9, "XL" : 40, "XC" : 90, "CD" : 400, "CM" : 900} 문자열을 순회하면서 현재의 index가 맨 마지막 글자가 아니고 I, X, C 문자라면 그 뒤에 있는 문자에 I일 경우 V, X가 있거나, 문자가 X일 경우에는 L, C가 있거나, 문자가 C일 경우에는 뒤에 문자가 D, M인지를 확인해서 예외처리를 해주면 된다. 파이썬 코드 1 2 3 ..

온라인 코딩 테스트 문제 풀이/LeetCode 문제 풀이 2019. 4. 2. 19:30

Python으로 푸는 LeetCode 9. Palindrome Number(Easy)

Palindrome Numbers의 규칙에 맞게 앞으로 읽어도 뒤로 읽어도 같은 숫자가 되는 경우인지 판단하는 프로그램을 짜시오 (주어진 숫자를 string으로 변경 없이 풀어봅시다) LeetCode에서 푼 문제 리스트 보기 LeetCode에서 문제 보기 githhub에서 코드 보기 문제 풀이 문제를 풀고 나니 숫자를 string으로 변경 없이 풀어보라는 걸 알았다. string으로 변경해서 푼 코드와 풀이 방법을 올려두고 내일 다시 풀어봐야겠다. 방법 1. 숫자를 string으로 변경해서 문제를 푼다. 먼저 숫자의 길이가 짝수인지 홀수인지 판단하여 boolean 값을 저장해두자. 마치 거울로 비춘 숫자처럼 정 가운데에서부터 양 끝으로 이어지는 숫자가 차례대로 같은 수를 Palindrome이라고 한다. ..

온라인 코딩 테스트 문제 풀이/LeetCode 문제 풀이 2019. 4. 1. 15:00

Python으로 푸는 LeetCode 3. Longest Substring Without Repeating Characters (Medium)

LeetCode 3. Longest Substring Without Repeating Characters (Medium) 서로 다른 문자로 이루어진 가장 긴 문자열을 찾을 수 있도록 코드를 짜야한다. LeetCode에서 푼 문제 리스트 보기 LeetCode에서 문제 보기 github에서 코드 보기 문제 풀이 1 이하의 문자는 그 길이를 구해 반환해준다. 그 외에는 처음 문자부터 서로 다른 문자일 경우를 확인해서 count를 해준다. 이미 나왔던 문자일 경우를 찾아내는 방법은 다음과 같다. 처음 보는 문자일 경우 defaultdict()에 그 문자를 key로 하고 index를 값으로 하여 ch_dict에 값을 구해둔다. 만약 이미 나왔던 문자가 나왔을 경우에는 ch_dict를 뒤져보았을 때, 해당 문자를 ..

온라인 코딩 테스트 문제 풀이/LeetCode 문제 풀이 2019. 3. 28. 09:00
  • 이전
  • 1
  • 다음

사이드바

NOTICE

  • 내 맘대로 파이썬 커리큘럼
  • 삼성 SW Expert Academy 푼 문제 리스트
  • LeetCode에서 푼 문제 리스트
  • 백준에서 푼 문제 리스트
  • 정리한 알고리즘 리스트
  • 전체 보기
MORE+

CATEGORY

  • 분류 전체보기 (136)
    • Project (9)
      • pre-work (1)
      • gist (8)
    • Python (5)
      • PYCON 2019 (0)
      • python 파헤치기 (5)
      • cheat sheet (0)
      • module (0)
    • Data structure (9)
    • Algorithm (0)
    • 온라인 코딩 테스트 문제 풀이 (104)
      • 문제 풀이 전략 (1)
      • LeetCode 문제 풀이 (42)
      • 백준 문제 풀이 (33)
      • 삼성 SW Expert 문제 풀이 (26)
      • 프로그래머스 문제 풀이 (2)
      • HackerRank 문제 풀이 (0)
    • Database (6)
      • MySQL (6)
    • Network (1)
    • Tools (2)
      • Git (2)

RECENTLY

  • 최근 글
  • 최근 댓글

최근 글

최근댓글

Trackback

TAG

  • leetcode 파이썬
  • SW Expert
  • leetcode
  • DP
  • 파이썬 자료구조
  • SW Expert Academy
  • python으로 푸는
  • Dynamic Programming
  • Tree
  • Django tutorial
  • python data structure
  • 삼성 기출 문제
  • leetcode python
  • 삼성 코딩 테스트
  • 백준
MORE+

CALENDAR

«   2025/10   »
일 월 화 수 목 금 토
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

VISITOR

오늘
어제
전체
  • 홈으로
  • 방명록
  • 로그인
  • 로그아웃
  • 맨위로
SKIN BY COPYCATZ COPYRIGHT Daim's blog, ALL RIGHT RESERVED.
Daim's blog
블로그 이미지 다임하게 님의 블로그
MENU
  • 홈으로
  • 블로그소개
CATEGORY
  • 분류 전체보기 (136)
    • Project (9)
      • pre-work (1)
      • gist (8)
    • Python (5)
      • PYCON 2019 (0)
      • python 파헤치기 (5)
      • cheat sheet (0)
      • module (0)
    • Data structure (9)
    • Algorithm (0)
    • 온라인 코딩 테스트 문제 풀이 (104)
      • 문제 풀이 전략 (1)
      • LeetCode 문제 풀이 (42)
      • 백준 문제 풀이 (33)
      • 삼성 SW Expert 문제 풀이 (26)
      • 프로그래머스 문제 풀이 (2)
      • HackerRank 문제 풀이 (0)
    • Database (6)
      • MySQL (6)
    • Network (1)
    • Tools (2)
      • Git (2)
VISITOR 오늘 / 전체
  • 글쓰기
  • 환경설정
  • 로그인
  • 로그아웃
  • 취소

검색

티스토리툴바