Skip to content

Conversation

@3veryDay
Copy link
Contributor

@3veryDay 3veryDay commented Jan 7, 2026

🚀 이슈 번호

Resolve: {#2281}

🧩 문제 해결

스스로 해결:

🔎 접근 과정

문제 해결을 위한 접근 방식을 설명해주세요.

  • 🔹 어떤 알고리즘을 사용했는지 : 기본 스택 사용
  • 🔹 어떤 방식으로 접근했는지:
    • 처음에는 dfs 로 생각했는데, 시간 복잡도 고려 부족. 4점
    • dfs + dp , 그전 기록과 비교하면서 더 좋을 경우에만 탐색 진행 : 4점
    • 뭔가 엄청 단순할 것 같아서 그냥 추가적인 개미굴이 있으면 무조건 사용, 그리고 그렇게 되면 메인 개미굴은 사용되는 게 아니니까, 그거 기반으로 나머지 선정 : 13점, 뭔가 문제가 있었음
    • 원이니까, 첫 + 마지막을 합쳐야했음! 이거 해결하니까 바로 굿

⏱️ 시간 복잡도

시간 복잡도 분석을 작성해주세요.
최악의 경우 수행 시간은 어느 정도인지 분석합니다.

  • Big-O 표기법: O(?)
  • 이유:

💻 구현 코드

import sys
input = sys.stdin.readline

N = int(input())
arr = list(map(int, input().split()))

def get(num) :
    return (num + 1) // 2

cnt = 0
answer = 0
first = -1
for idx, val in enumerate(arr) :
    if val != 0 :
        if first == -1 :
            first = idx
            answer += val
            cnt = 0
        else :
            answer += val
            answer += get(cnt)
            cnt = 0
    else :
        
        cnt += 1
answer += get(cnt + first)

print(answer)

@3veryDay 3veryDay linked an issue Jan 7, 2026 that may be closed by this pull request
@3veryDay 3veryDay self-assigned this Jan 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

260107 : 코딩테스트

2 participants