학습 본문으로 건너뛰기
VAIRODE
stack·queue·deque48번째 작은 수업
오늘은 질문 하나만 해결해요48 / 72

따라 해보기 · 직접 바꿔보기

BFS layer·distance 원장

오늘의 질문

source distance 0에서 neighbor distance를 current+1로 최초 지정하고 queue boundary와 무관하게 layer를 명시적 값으로 기록한다. 이를 생략하면 sentinel node를 실제 vertex와 충돌시키거나 queue size snapshot이 변하는 중 layer count를 잘못 갱신한다.에서도 예제 순서는 맞을 수 있지만 경계·부하·동시성에서 반증 가능한 discipline 결정은 남길 수 없습니다.

아직 답을 몰라도 괜찮아요. 아래 작은 예시를 보고 먼저 예상해 보세요.

01 · 같이 연습해요

작은 문제부터 하나씩 직접 풀어봐요

먼저 예상하고, 한 단계씩 확인하고, 막힌 곳을 고쳐 봐요. 도움을 열어도 괜찮아요. 도움을 본 문제는 나중에 모양을 바꿔 다시 풀어보면 됩니다.

연습에서 작성 중인 답0 / 8
  1. 01

    찾아보기 · 기초

    sq48 recognize · BFS layer·distance 원장: BFS layer·distance ledger·level boundary 표식 중 “source distance 0에서 neighbor distance를 current+1로 최초 지정하고 queue boundary와 무관하게 layer를 명시적 값으로 기록한다.”과 같은 discipline 계약을 고른다.

    이 문제는 주어진 내용과 정답 기준을 더 만드는 중이에요. 지금 적은 답은 연습 메모로만 저장돼요.

    정답 대신 4단계 힌트 보기
    1. 관찰

      sentinel node를 실제 vertex와 충돌시키거나 queue size snapshot이 변하는 중 layer count를 잘못 갱신한다. 직전까지 참이었던 logical order와 처음 달라진 endpoint·size·result를 찾으세요.

    2. 개념

      BFS layer·distance ledger·level boundary를 discipline·boundary·source-level로 나눠 적으세요.

    3. 다음 도움

      내 생각을 먼저 적고 ‘내 답과 맞춰 볼 기준 보기’을 누르면, 풀 순서와 더 자세한 도움을 열어 드려요.

    정답과 비교
  2. 02

    먼저 생각하기 · 기초

    sq48 predict · BFS layer·distance 원장: “sentinel node를 실제 vertex와 충돌시키거나 queue size snapshot이 변하는 중 layer count를 잘못 갱신한다.” 조건에서 반환값·상태·overflow/underflow 판정을 실행 전에 봉인한다.

    이 문제는 주어진 내용과 정답 기준을 더 만드는 중이에요. 지금 적은 답은 연습 메모로만 저장돼요.

    정답 대신 4단계 힌트 보기
    1. 관찰

      sentinel node를 실제 vertex와 충돌시키거나 queue size snapshot이 변하는 중 layer count를 잘못 갱신한다. 직전까지 참이었던 logical order와 처음 달라진 endpoint·size·result를 찾으세요.

    2. 개념

      BFS layer·distance ledger·level boundary를 discipline·boundary·source-level로 나눠 적으세요.

    3. 다음 도움

      내 생각을 먼저 적고 ‘내 답과 맞춰 볼 기준 보기’을 누르면, 풀 순서와 더 자세한 도움을 열어 드려요.

    움직임과 비교
  3. 03

    순서 따라가기 · 익힌 것을 써보기

    sq48 trace · BFS layer·distance 원장: BFS layer → distance ledger → level boundary 순서로 vertex·distance·parent·enqueue layer를 가진 distance ledger가 만들어질 때까지 논리 순서를 추적한다.

    이 문제는 주어진 내용과 정답 기준을 더 만드는 중이에요. 지금 적은 답은 연습 메모로만 저장돼요.

    정답 대신 4단계 힌트 보기
    1. 관찰

      sentinel node를 실제 vertex와 충돌시키거나 queue size snapshot이 변하는 중 layer count를 잘못 갱신한다. 직전까지 참이었던 logical order와 처음 달라진 endpoint·size·result를 찾으세요.

    2. 개념

      BFS layer·distance ledger·level boundary를 discipline·boundary·source-level로 나눠 적으세요.

    3. 다음 도움

      내 생각을 먼저 적고 ‘내 답과 맞춰 볼 기준 보기’을 누르면, 풀 순서와 더 자세한 도움을 열어 드려요.

    움직임과 비교
  4. 04

    내 말로 설명하기 · 익힌 것을 써보기

    sq48 explain · BFS layer·distance 원장: source distance 0에서 neighbor distance를 current+1로 최초 지정하고 queue boundary와 무관하게 layer를 명시적 값으로 기록한다.이 필요한 이유와 vertex·distance·parent·enqueue layer를 가진 distance ledger만으로 보장할 수 없는 concurrency·runtime 범위를 설명한다.

    이 문제는 주어진 내용과 정답 기준을 더 만드는 중이에요. 지금 적은 답은 연습 메모로만 저장돼요.

    정답 대신 4단계 힌트 보기
    1. 관찰

      sentinel node를 실제 vertex와 충돌시키거나 queue size snapshot이 변하는 중 layer count를 잘못 갱신한다. 직전까지 참이었던 logical order와 처음 달라진 endpoint·size·result를 찾으세요.

    2. 개념

      BFS layer·distance ledger·level boundary를 discipline·boundary·source-level로 나눠 적으세요.

    3. 다음 도움

      내 생각을 먼저 적고 ‘내 답과 맞춰 볼 기준 보기’을 누르면, 풀 순서와 더 자세한 도움을 열어 드려요.

    설명 기준과 비교
  5. 05

    빈칸 채우기 · 익힌 것을 써보기

    sq48 complete · BFS layer·distance 원장: 누락된 endpoint·size·capacity·ordering·failure 칸을 채워 “sentinel, size-batch, explicit-distance 세 구현의 동일 결과와 경계를 검증한다.”을 완성한다.

    이 문제는 주어진 내용과 정답 기준을 더 만드는 중이에요. 지금 적은 답은 연습 메모로만 저장돼요.

    정답 대신 4단계 힌트 보기
    1. 관찰

      sentinel node를 실제 vertex와 충돌시키거나 queue size snapshot이 변하는 중 layer count를 잘못 갱신한다. 직전까지 참이었던 logical order와 처음 달라진 endpoint·size·result를 찾으세요.

    2. 개념

      BFS layer·distance ledger·level boundary를 discipline·boundary·source-level로 나눠 적으세요.

    3. 다음 도움

      내 생각을 먼저 적고 ‘내 답과 맞춰 볼 기준 보기’을 누르면, 풀 순서와 더 자세한 도움을 열어 드려요.

    답과 설명 함께 비교
  6. 06

    틀린 곳 고치기 · 익힌 것을 써보기

    sq48 debug · BFS layer·distance 원장: AI가 만든 구현에 “sentinel node를 실제 vertex와 충돌시키거나 queue size snapshot이 변하는 중 layer count를 잘못 갱신한다.”를 주입하고 최초 잘못된 state transition만 수정한다.

    이 문제는 주어진 내용과 정답 기준을 더 만드는 중이에요. 지금 적은 답은 연습 메모로만 저장돼요.

    정답 대신 4단계 힌트 보기
    1. 관찰

      sentinel node를 실제 vertex와 충돌시키거나 queue size snapshot이 변하는 중 layer count를 잘못 갱신한다. 직전까지 참이었던 logical order와 처음 달라진 endpoint·size·result를 찾으세요.

    2. 개념

      BFS layer·distance ledger·level boundary를 discipline·boundary·source-level로 나눠 적으세요.

    3. 다음 도움

      내 생각을 먼저 적고 ‘내 답과 맞춰 볼 기준 보기’을 누르면, 풀 순서와 더 자세한 도움을 열어 드려요.

    답과 설명 함께 비교
  7. 07

    직접 만들기 · 새 문제

    sq48 implement · BFS layer·distance 원장: sentinel, size-batch, explicit-distance 세 구현의 동일 결과와 경계를 검증한다.을 frozen synthetic operation stream에 적용해 vertex·distance·parent·enqueue layer를 가진 distance ledger를 생성한다.

    이 문제는 주어진 내용과 정답 기준을 더 만드는 중이에요. 지금 적은 답은 연습 메모로만 저장돼요.

    정답 대신 4단계 힌트 보기
    1. 관찰

      sentinel node를 실제 vertex와 충돌시키거나 queue size snapshot이 변하는 중 layer count를 잘못 갱신한다. 직전까지 참이었던 logical order와 처음 달라진 endpoint·size·result를 찾으세요.

    2. 개념

      BFS layer·distance ledger·level boundary를 discipline·boundary·source-level로 나눠 적으세요.

    3. 다음 도움

      내 생각을 먼저 적고 ‘내 답과 맞춰 볼 기준 보기’을 누르면, 풀 순서와 더 자세한 도움을 열어 드려요.

    정답과 비교
  8. 08

    새 문제에 써보기 · 새 문제

    sq48 transfer · BFS layer·distance 원장: 최소 hop 계산·level-order report·infection simulation로 판단을 옮겨 보존할 discipline과 달라지는 failure·concurrency·cost 경계를 방어한다.

    이 문제는 주어진 내용과 정답 기준을 더 만드는 중이에요. 지금 적은 답은 연습 메모로만 저장돼요.

    정답 대신 4단계 힌트 보기
    1. 관찰

      sentinel node를 실제 vertex와 충돌시키거나 queue size snapshot이 변하는 중 layer count를 잘못 갱신한다. 직전까지 참이었던 logical order와 처음 달라진 endpoint·size·result를 찾으세요.

    2. 개념

      BFS layer·distance ledger·level boundary를 discipline·boundary·source-level로 나눠 적으세요.

    3. 다음 도움

      내 생각을 먼저 적고 ‘내 답과 맞춰 볼 기준 보기’을 누르면, 풀 순서와 더 자세한 도움을 열어 드려요.

    설명 기준과 비교

8개 답이 남았습니다.

02 · 막힌 곳을 찾아요

틀린 답에서 생각이 갈라진 첫 지점 찾기

헷갈림 01

sentinel node를 실제 vertex와 충돌시키거나 queue size snapshot이 변하는 중 layer count를 잘못 갱신한다.

겉으로 보이는 막힘
BFS layer·distance 원장 구현이 일부 예시는 통과하지만 제거 순서·endpoint·empty/full 결과를 재현할 수 없다.
막힌 까닭
source distance 0에서 neighbor distance를 current+1로 최초 지정하고 queue boundary와 무관하게 layer를 명시적 값으로 기록한다.을 구현 전에 봉인하지 않았다.
다시 해보는 방법
sentinel, size-batch, explicit-distance 세 구현의 동일 결과와 경계를 검증한다.에서 operation grammar와 pre/post-state를 고정하고 vertex·distance·parent·enqueue layer를 가진 distance ledger를 다시 만든다.
헷갈림 02

BFS layer operation만 기록하고 size·capacity·head·tail·top 또는 sentinel 상태를 생략한다.

겉으로 보이는 막힘
empty·full·wraparound 전이에서 false empty, overwrite, duplicate visit 또는 stale result가 생긴다.
막힌 까닭
logical order와 physical coordinate를 분리하지 않았다.
다시 해보는 방법
vertex·distance·parent·enqueue layer를 가진 distance ledger에 size와 endpoint 좌표, 반환값, rejected/dropped operation을 함께 기록한다.
헷갈림 03

level boundary의 단일 실행 성공이나 문서의 개별 operation 표현을 compound atomicity·fairness·thread safety로 확대한다.

겉으로 보이는 막힘
최소 hop 계산·level-order report·infection simulation에서 race·blocking·starvation 또는 구현별 성능 차이를 놓친다.
막힌 까닭
ADT·library·implementation·measurement와 concurrency policy를 분리하지 않았다.
다시 해보는 방법
sentinel node를 실제 vertex와 충돌시키거나 queue size snapshot이 변하는 중 layer count를 잘못 갱신한다. fixture의 source-level claim을 좁히고 synchronization·backpressure·measurement를 별도 evidence로 둔다.

03 · 내게 맞는 도움 고르기

같은 목표를 원하는 도움만큼 연습해요

안내 받으며

안내형

BFS layer · distance ledger · level boundary 카드와 operation/state 표를 제공하고 색상 외에도 front·back·top·size·capacity·result label을 표시한다.

BFS layer·distance 원장에서 operation 순서와 endpoint를 추적해 boundary result와 source-level claim을 판정하는 설명도에서 색상뿐 아니라 operation·front·back·top·size·capacity·result·claim-level을 문자와 선 종류로 표시한다.
혼자 해보기

내 힘으로

BFS layer·distance 원장의 미공개 operation stream에서 discipline·경계·비용·runtime claim을 독립 재구성하는 능력의 처음 보는 frozen operation stream을 AI 없이 먼저 분석하고 expected return·logical order·boundary verdict를 봉인한 뒤 실행 관찰과 대조한다.

공식 정의·API 문법·도구 사용법은 열 수 있지만 해당 변형의 최종 pop/dequeue sequence, exact transition, hidden fixture와 최종 structure 선택은 먼저 제공하지 않는다.
더 도전하기

심화형

최소 hop 계산·level-order report·infection simulation에서 bounded capacity·adversarial operation order·concurrency policy 중 두 축을 추가하고 판정이 바뀌는 최소 trace를 찾는다.

더 정밀한 trace와 production policy는 오류 탐지력을 높이지만 문서 비용도 늘리므로 decision-changing discipline·boundary·blocking event를 우선 기록한다.