처음이어도 괜찮아요 · 그림부터 시작해요
세 단순 정렬을 다른 답으로 검산하기
같은 답을 내는 서로 다른 방법을 준비해 한쪽의 같은 실수를 함께 믿지 않도록 검산할 수 있어요.
먼저 떠올릴 생활 장면세 친구가 같은 카드 줄을 서로 다른 방법으로 정리한 뒤, 원본 카드와 하나씩 맞춰 보는 것과 같아요.- 1짧은 이야기 읽기
- 2내 생각 하나 고르기
- 3네 걸음 같이 보기
- 4내 말로 한 줄 적기
02 · 낯선 말부터 풀기
정확한 이름보다 먼저 쉬운 뜻을 읽어요
처음 보는 말도 책 읽듯 풀어봐요
이 수업은 쉬운 뜻과 생활 예를 아직 함께 준비하지 못했어요. 설명 없는 정확한 이름은 먼저 보여 주지 않을게요.
그림에서 찾을 쉬운 규칙
- 01첫 방법의 입력·예상 답·핵심 규칙을 적어요.
- 02다른 규칙이나 더 단순한 작은 입력 검산 방법을 골라요.
- 03두 방법의 중간 기록을 따로 만든 뒤 마지막 답만 비교해요.
- 04답이 다르면 처음 갈라진 단계와 어느 근거를 고칠지 표시해요.
03 · 그림으로 보기
카드가 움직이고 찾을 범위가 줄어드는 모습을 따라가요
- 01오늘의 장면교육용 judge·회귀 suite·AI 생성 코드 감사를 여덟 장 카드와 두 개 query로 줄여 세 단순 정렬을 다른 답으로 검산하기 판단을 수행한다.
- 02첫 걸음첫 방법의 입력·예상 답·핵심 규칙을 적어요.
- 03결과 열기내 답을 먼저 적은 뒤 결과를 열어 봐요.
04 · 책처럼 천천히 되짚기
방금 한 일을 한 줄씩 다시 읽어요
교육용 judge·회귀 suite·AI 생성 코드 감사를 여덟 장 카드와 두 개 query로 줄여 세 단순 정렬을 다른 답으로 검산하기 판단을 수행한다.
ss20 · 8-record public fixture · duplicate tie · deterministic key/query order05 · 이제 내가 해볼 차례
여기까지 오면 이런 일을 할 수 있어요
같은 답을 내는 서로 다른 방법을 준비해 한쪽의 같은 실수를 함께 믿지 않도록 검산할 수 있어요.
- 첫 방법의 입력·예상 답·핵심 규칙을 적어요.
- 다른 규칙이나 더 단순한 작은 입력 검산 방법을 골라요.
- 두 방법의 중간 기록을 따로 만든 뒤 마지막 답만 비교해요.
- 답이 다르면 처음 갈라진 단계와 어느 근거를 고칠지 표시해요.
오늘 해낼 일과 다 했다고 볼 기준 보기쉬운 순서를 익힌 뒤 더 정확히 확인하고 싶을 때 열어요.
wrong bound·wrong tie·lost saved value mutant를 최소 fixture로 각각 실패시킨다.을 수행하고 6원소 exhaustive oracle·mutant kill matrix·최초 divergence report로 order/query contract·invariant·cost·claim level을 독립 검증한다.
- 세 단순 정렬을 다른 답으로 검산하기의 input·output·key/comparator·tie·duplicate·mutation 계약을 AI 없이 먼저 고정한다.
- 세 구현이 같은 복사 코드와 comparator를 공유하는데 서로 일치했다는 이유로 독립 검산이라 부른다.를 empty·singleton·all-equal·already-sorted·reverse·adversarial 중 해당하는 최소 반례로 재현한다.
- correctness와 comparison·write·space·preprocessing/query cost, library 문서와 측정 관찰을 서로 구분한다.
- 6원소 exhaustive oracle·mutant kill matrix·최초 divergence report와 사람의 accept·revise·reject 판정 및 보장하지 않는 범위를 제출한다.
06 · 자주 헷갈리는 지점
틀린 답도 이유를 알면 다음에는 맞힐 수 있어요
처음부터 모두 맞힐 필요는 없어요.괜찮아요. 처음 어긋난 한 단계만 찾아요. 둘 중 하나를 바로 지우지 말고 두 기록이 처음 달라진 한 단계와 사용한 가정을 나란히 놓아요.
헷갈리기 쉬운 이유 세 가지 보기내가 어디에서 다르게 생각했는지 찾고 싶을 때 열어요.
01세 단순 정렬을 다른 답으로 검산하기에서 작은 예제의 최종 순서나 위치가 맞으면 기준·동률·중복·mutation 계약도 자동으로 맞다.
한 번 더 생각해 볼 질문교육용 judge·회귀 suite·AI 생성 코드 감사에서 같은 최종 값처럼 보이지만 안정성이나 위치 답이 달라지는 두 계약을 만드세요.
이렇게 고쳐 생각해요bubble·selection·insertion의 결과를 작은 brute-force permutation·stable reference와 대조하고 서로 다른 결함 mutant를 죽인다.처럼 정답 전에 input·order·query contract와 observable result를 봉인해야 한다.
02mutant 한 번이 빠르면 모든 input order·key range·query count에서 같은 방법이 최선이다.
한 번 더 생각해 볼 질문세 구현이 같은 복사 코드와 comparator를 공유하는데 서로 일치했다는 이유로 독립 검산이라 부른다.를 드러내며 선택이 뒤집히는 최소 input family를 제시하세요.
이렇게 고쳐 생각해요6원소 exhaustive oracle·mutant kill matrix·최초 divergence report에 worst case, preprocessing, comparison/write/space와 관찰값을 분리해야 한다.
03AI 구현과 AI가 만든 expected trace가 일치하면 세 단순 정렬을 다른 답으로 검산하기의 correctness와 성능이 독립 검증된다.
한 번 더 생각해 볼 질문세 구현이 같은 복사 코드와 comparator를 공유하는데 서로 일치했다는 이유로 독립 검산이라 부른다.를 드러내는 AI-off fixture와 사람이 계산할 expected result를 쓰세요.
이렇게 고쳐 생각해요같은 가정을 공유한 두 결과는 독립 oracle이 아니며 손계산 trace·brute force·metamorphic relation·공식 계약 중 별도 근거가 필요하다.
07 · 더 궁금할 때만 보기
선생님과 검토자를 위한 믿을 만한 원문
원문과 어디까지 참고했는지 펼쳐 보기처음 배우는 동안에는 열지 않아도 괜찮아요.
이 수업의 설명이 공식 규칙과 맞는지 선생님과 검토자가 다시 확인할 때 쓰는 원문이에요.
이 수업의 설명이 공식 규칙과 맞는지 선생님과 검토자가 다시 확인할 때 쓰는 원문이에요.
이 수업의 설명이 공식 규칙과 맞는지 선생님과 검토자가 다시 확인할 때 쓰는 원문이에요.
이 수업의 설명이 공식 규칙과 맞는지 선생님과 검토자가 다시 확인할 때 쓰는 원문이에요.
이 수업의 설명이 공식 규칙과 맞는지 선생님과 검토자가 다시 확인할 때 쓰는 원문이에요.
이 수업의 설명이 공식 규칙과 맞는지 선생님과 검토자가 다시 확인할 때 쓰는 원문이에요.
이 수업의 설명이 공식 규칙과 맞는지 선생님과 검토자가 다시 확인할 때 쓰는 원문이에요.
