Skip to content

Conversation

@BangDori
Copy link
Member

@BangDori BangDori commented Jan 1, 2025

문제

Type Info
Time Complexity O(N)
Space Complexity O(N)
Algorithm 구현
Data Structure Set

Constraints

  • 1 <= word.length <= 1000
  • word consists of digits and lowercase English letters.

Edge Case

  1. 0으로 시작되는 숫자가 포함되는 경우
  • Input: 1ab001adbfs00001
  • Output: 1

풀이

prevNumberPos = UNSPECIFIED // 숫자의 위치를 저장할 변수
numberGroups =  Set 생성

for (문자열) {
  if (word[i] 숫자이고 prevNumberPos != UNSPECIFIED이고 word[prevNumberPos] != '0'이면) {
      continue
  }

  if (word[i] 숫자이면) {
      prevNumberPos = i // 숫자의 위치 저장
      continue
  }

  if (prevNumberPos == UNSPECIFIED이면) {
      continue
  }

  numberGroups에 word[prevNumberPos:i] 추가
  prevNumberPos = UNSPECIFIED // 숫자의 위치 초기화
}

if (문자열의 마지막이 숫자로 끝났다면) {
    numberGroups에 word[prevNumberPos:word.length] 추가
}

return numberGroups의 크기

어려웠던 점

  • 고유한 값을 저장해야 하는데, 숫자의 크기가 너무 커질 경우 Infinity 처리가 되어서 예외 처리가 까다로웠다.

알게된 점

  • 없음

@github-actions github-actions bot merged commit 2c38962 into main Jan 9, 2025
2 checks passed
@BangDori BangDori deleted the bangdori/number-of-different-integers-in-a-string branch January 10, 2025 01:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants