feat(study): exam_round 필터 + 일괄 import 스크립트 — 1천+ 문제 대비 (P0)
문제: 1천+ 문항 토픽에서 보기 페이지 prev/next 가 page_size=200 cap 으로
회차 외 문항만 받아 같은 회차 prev/next 누락 회귀.
해결:
- /study-topics/{tid}/questions 에 exam_round Query 파라미터 추가 (exact match).
- StudyQuestionSummary 응답에 exam_question_number 필드 추가.
- exam_round 필터 시 정렬 = exam_question_number asc NULLS LAST, created_at asc.
- 보기 페이지 loadRoundSiblings 가 ?exam_round= 로 한 회차만 fetch.
- 토스트 문구 "토픽 200문제 초과" → "이 회차에 200문항 초과" (의미 일치).
추가 — 가스기사 기출 일괄 import 스크립트:
- scripts/import_gas_questions.py: md 파서 + dry-run + apply.
· exam_question_number 3소스 (파일명/제목/메타) 일치 검증.
· subject 정규화 (괄호 세부분류는 scope 로 이동, 5과목 통일).
· 이미지 4케이스 판정 + import_reports/{회차}_image_required.md 생성.
· 첫 실패 abort 기본, --skip-existing/--continue-on-error 옵션.
· 토큰 사전 검사 (GET /study-topics/{tid}).
- import_reports/: 2019년 1~3회 + 2020년 1~2회 리포트.
- 운영: 4회분 360문항 자동 import 완료 (이미지 4건 자동 첨부).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -150,6 +150,7 @@ class StudyQuestionSummary(BaseModel):
|
|||||||
scope: str | None
|
scope: str | None
|
||||||
exam_name: str | None
|
exam_name: str | None
|
||||||
exam_round: str | None
|
exam_round: str | None
|
||||||
|
exam_question_number: int | None = None # PR-11/12 보기 페이지 prev/next 용
|
||||||
is_active: bool
|
is_active: bool
|
||||||
has_images: bool = False
|
has_images: bool = False
|
||||||
attempt_count: int
|
attempt_count: int
|
||||||
@@ -363,6 +364,7 @@ async def list_questions_in_topic(
|
|||||||
session: Annotated[AsyncSession, Depends(get_session)],
|
session: Annotated[AsyncSession, Depends(get_session)],
|
||||||
subject: str | None = Query(None),
|
subject: str | None = Query(None),
|
||||||
scope: str | None = Query(None),
|
scope: str | None = Query(None),
|
||||||
|
exam_round: str | None = Query(None, description="회차 필터 — 보기 페이지 prev/next 같은 단일 회차 한정 조회"),
|
||||||
page: int = Query(1, ge=1),
|
page: int = Query(1, ge=1),
|
||||||
page_size: int = Query(50, ge=1, le=200),
|
page_size: int = Query(50, ge=1, le=200),
|
||||||
):
|
):
|
||||||
@@ -379,14 +381,26 @@ async def list_questions_in_topic(
|
|||||||
base = base.where(StudyQuestion.subject == subject)
|
base = base.where(StudyQuestion.subject == subject)
|
||||||
if scope is not None:
|
if scope is not None:
|
||||||
base = base.where(StudyQuestion.scope == scope)
|
base = base.where(StudyQuestion.scope == scope)
|
||||||
|
if exam_round is not None:
|
||||||
|
base = base.where(StudyQuestion.exam_round == exam_round)
|
||||||
|
|
||||||
total = (
|
total = (
|
||||||
await session.execute(select(func.count()).select_from(base.subquery()))
|
await session.execute(select(func.count()).select_from(base.subquery()))
|
||||||
).scalar() or 0
|
).scalar() or 0
|
||||||
|
|
||||||
|
# 정렬: exam_round 필터 시 회차 안 prev/next 안정화 (exam_question_number asc NULLS LAST,
|
||||||
|
# created_at asc fallback). 미필터 시 기존 created_at desc 유지.
|
||||||
|
if exam_round is not None:
|
||||||
|
order_clause = (
|
||||||
|
StudyQuestion.exam_question_number.asc().nulls_last(),
|
||||||
|
StudyQuestion.created_at.asc(),
|
||||||
|
StudyQuestion.id.asc(),
|
||||||
|
)
|
||||||
|
else:
|
||||||
|
order_clause = (StudyQuestion.created_at.desc(), StudyQuestion.id.desc())
|
||||||
rows = (
|
rows = (
|
||||||
await session.execute(
|
await session.execute(
|
||||||
base.order_by(StudyQuestion.created_at.desc(), StudyQuestion.id.desc())
|
base.order_by(*order_clause)
|
||||||
.offset((page - 1) * page_size)
|
.offset((page - 1) * page_size)
|
||||||
.limit(page_size)
|
.limit(page_size)
|
||||||
)
|
)
|
||||||
@@ -458,6 +472,7 @@ async def list_questions_in_topic(
|
|||||||
scope=q.scope,
|
scope=q.scope,
|
||||||
exam_name=q.exam_name,
|
exam_name=q.exam_name,
|
||||||
exam_round=q.exam_round,
|
exam_round=q.exam_round,
|
||||||
|
exam_question_number=q.exam_question_number,
|
||||||
is_active=q.is_active,
|
is_active=q.is_active,
|
||||||
attempt_count=stats_map.get(q.id, (0, 0))[0],
|
attempt_count=stats_map.get(q.id, (0, 0))[0],
|
||||||
last_correct=last_correct_map.get(q.id),
|
last_correct=last_correct_map.get(q.id),
|
||||||
|
|||||||
@@ -57,19 +57,27 @@
|
|||||||
} catch {}
|
} catch {}
|
||||||
}
|
}
|
||||||
|
|
||||||
/** 같은 회차 prev/next 후보 fetch. exam_round 가 truthy 일 때만. */
|
/** 같은 회차 prev/next 후보 fetch. exam_round 가 truthy 일 때만.
|
||||||
|
*
|
||||||
|
* 백엔드의 ?exam_round= 필터로 한 회차만 받음 (1천+ 토픽 환경 대비).
|
||||||
|
* 한 회차가 200문항 초과 특수 케이스에서만 토스트 경고.
|
||||||
|
*/
|
||||||
async function loadRoundSiblings() {
|
async function loadRoundSiblings() {
|
||||||
roundSiblings = [];
|
roundSiblings = [];
|
||||||
if (!q?.exam_round) return; // 원본 값 truthy 체크 (표시 문자열과 분리)
|
if (!q?.exam_round) return; // null/empty → prev/next 비활성
|
||||||
try {
|
try {
|
||||||
const res = await api(`/study-topics/${topicId}/questions?page_size=200`);
|
const params = new URLSearchParams({
|
||||||
|
page_size: '200',
|
||||||
|
exam_round: q.exam_round,
|
||||||
|
});
|
||||||
|
const res = await api(`/study-topics/${topicId}/questions?${params}`);
|
||||||
const items = res.items ?? [];
|
const items = res.items ?? [];
|
||||||
// 백엔드 max=200. 200건 만땅 + total>200 이면 회차 안 일부가 누락될 수 있음 → 안내.
|
// 한 회차 200+ 특수 케이스 — 일반적으로 100문항이라 안 나옴.
|
||||||
if (items.length === 200 && (res.total ?? 0) > 200) {
|
if (items.length === 200 && (res.total ?? 0) > 200) {
|
||||||
addToast('info', '이 토픽에 200문제 초과 — 회차 prev/next 가 일부 누락될 수 있습니다');
|
addToast('info', '이 회차에 200문항 초과 — 이전/다음 문제가 일부 누락될 수 있습니다');
|
||||||
}
|
}
|
||||||
const siblings = items.filter((it) => it.exam_round === q.exam_round);
|
// 백엔드도 정렬되어 오지만 클라이언트도 안정성 위해 명시.
|
||||||
siblings.sort((a, b) => {
|
items.sort((a, b) => {
|
||||||
const an = a.exam_question_number;
|
const an = a.exam_question_number;
|
||||||
const bn = b.exam_question_number;
|
const bn = b.exam_question_number;
|
||||||
if (an != null && bn != null) return an - bn;
|
if (an != null && bn != null) return an - bn;
|
||||||
@@ -77,7 +85,7 @@
|
|||||||
if (bn != null) return 1;
|
if (bn != null) return 1;
|
||||||
return new Date(a.created_at).getTime() - new Date(b.created_at).getTime();
|
return new Date(a.created_at).getTime() - new Date(b.created_at).getTime();
|
||||||
});
|
});
|
||||||
roundSiblings = siblings;
|
roundSiblings = items;
|
||||||
} catch {
|
} catch {
|
||||||
roundSiblings = [];
|
roundSiblings = [];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,255 @@
|
|||||||
|
# 2019년 1회 — 이미지 필요 문항 리포트
|
||||||
|
|
||||||
|
## 사용자가 확인할 것
|
||||||
|
|
||||||
|
- missing_png — 0건
|
||||||
|
- **placeholder_skipped — 39건** (마커 없는데 png 있음 — 실제 도식이면 md 첫 줄에 `**⚠ 이미지 별도 업로드 필요**` 마커 추가 검토)
|
||||||
|
- 41번 / 가스설비
|
||||||
|
- 42번 / 가스설비
|
||||||
|
- 43번 / 가스설비
|
||||||
|
- 44번 / 가스설비
|
||||||
|
- 45번 / 가스설비
|
||||||
|
- 46번 / 가스설비
|
||||||
|
- 47번 / 가스설비
|
||||||
|
- 48번 / 가스설비
|
||||||
|
- 49번 / 가스설비
|
||||||
|
- 50번 / 가스설비
|
||||||
|
- 51번 / 가스설비
|
||||||
|
- 52번 / 가스설비
|
||||||
|
- 53번 / 가스설비
|
||||||
|
- 54번 / 가스설비
|
||||||
|
- 55번 / 가스설비
|
||||||
|
- 56번 / 가스설비
|
||||||
|
- 57번 / 가스설비
|
||||||
|
- 58번 / 가스설비
|
||||||
|
- 59번 / 가스설비
|
||||||
|
- 60번 / 가스설비
|
||||||
|
- 81번 / 가스계측기기
|
||||||
|
- 82번 / 가스계측기기
|
||||||
|
- 83번 / 가스계측기기
|
||||||
|
- 85번 / 가스계측기기
|
||||||
|
- 86번 / 가스계측기기
|
||||||
|
- 87번 / 가스계측기기
|
||||||
|
- 88번 / 가스계측기기
|
||||||
|
- 89번 / 가스계측기기
|
||||||
|
- 90번 / 가스계측기기
|
||||||
|
- 91번 / 가스계측기기
|
||||||
|
- 92번 / 가스계측기기
|
||||||
|
- 93번 / 가스계측기기
|
||||||
|
- 94번 / 가스계측기기
|
||||||
|
- 95번 / 가스계측기기
|
||||||
|
- 96번 / 가스계측기기
|
||||||
|
- 97번 / 가스계측기기
|
||||||
|
- 98번 / 가스계측기기
|
||||||
|
- 99번 / 가스계측기기
|
||||||
|
- 100번 / 가스계측기기
|
||||||
|
- **attach_planned — 1건** (apply 시 자동 첨부 예정)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 첨부 예정 (attach_planned) — 1건
|
||||||
|
|
||||||
|
### 84번 / 가스계측기기 / 혼합 가스 발열량
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/84.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/84.png
|
||||||
|
- 설명: 발열량 표 (메탄 9520 / 에탄 16850 / 프로판 24160).
|
||||||
|
- 상태: attach_planned (apply 시 자동 첨부)
|
||||||
|
|
||||||
|
## OCR placeholder (참고) — 39건
|
||||||
|
|
||||||
|
마커는 없지만 png 가 존재 — OCR 원본일 가능성. 마커 누락 실수인지 검토.
|
||||||
|
|
||||||
|
### 41번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/41.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/41.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 42번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/42.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/42.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 43번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/43.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/43.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 44번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/44.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/44.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 45번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/45.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/45.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 46번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/46.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/46.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 47번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/47.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/47.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 48번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/48.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/48.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 49번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/49.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/49.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 50번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/50.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/50.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 51번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/51.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/51.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 52번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/52.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/52.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 53번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/53.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/53.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 54번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/54.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/54.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 55번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/55.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/55.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 56번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/56.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/56.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 57번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/57.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/57.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 58번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/58.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/58.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 59번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/59.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/59.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 60번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/60.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/03 가스설비/60.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 81번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/81.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/81.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 82번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/82.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/82.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 83번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/83.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/83.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 85번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/85.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/85.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 86번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/86.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/86.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 87번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/87.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/87.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 88번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/88.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/88.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 89번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/89.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/89.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 90번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/90.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/90.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 91번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/91.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/91.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 92번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/92.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/92.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 93번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/93.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/93.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 94번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/94.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/94.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 95번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/95.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/95.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 96번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/96.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/96.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 97번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/97.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/97.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 98번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/98.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/98.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 99번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/99.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/99.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 100번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/100.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 1회/05 가스계측기기/100.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
@@ -0,0 +1,615 @@
|
|||||||
|
# 2019년 2회 — 이미지 필요 문항 리포트
|
||||||
|
|
||||||
|
## 사용자가 확인할 것
|
||||||
|
|
||||||
|
- missing_png — 0건
|
||||||
|
- **placeholder_skipped — 95건** (마커 없는데 png 있음 — 실제 도식이면 md 첫 줄에 `**⚠ 이미지 별도 업로드 필요**` 마커 추가 검토)
|
||||||
|
- 1번 / 가스유체역학
|
||||||
|
- 2번 / 가스유체역학
|
||||||
|
- 3번 / 가스유체역학
|
||||||
|
- 5번 / 가스유체역학
|
||||||
|
- 6번 / 가스유체역학
|
||||||
|
- 7번 / 가스유체역학
|
||||||
|
- 9번 / 가스유체역학
|
||||||
|
- 10번 / 가스유체역학
|
||||||
|
- 11번 / 가스유체역학
|
||||||
|
- 13번 / 가스유체역학
|
||||||
|
- 14번 / 가스유체역학
|
||||||
|
- 15번 / 가스유체역학
|
||||||
|
- 16번 / 가스유체역학
|
||||||
|
- 17번 / 가스유체역학
|
||||||
|
- 19번 / 가스유체역학
|
||||||
|
- 20번 / 가스유체역학
|
||||||
|
- 22번 / 연소공학
|
||||||
|
- 23번 / 연소공학
|
||||||
|
- 24번 / 연소공학
|
||||||
|
- 25번 / 연소공학
|
||||||
|
- 26번 / 연소공학
|
||||||
|
- 27번 / 연소공학
|
||||||
|
- 28번 / 연소공학
|
||||||
|
- 29번 / 연소공학
|
||||||
|
- 30번 / 연소공학
|
||||||
|
- 31번 / 연소공학
|
||||||
|
- 32번 / 연소공학
|
||||||
|
- 33번 / 연소공학
|
||||||
|
- 34번 / 연소공학
|
||||||
|
- 35번 / 연소공학
|
||||||
|
- 36번 / 연소공학
|
||||||
|
- 37번 / 연소공학
|
||||||
|
- 38번 / 연소공학
|
||||||
|
- 39번 / 연소공학
|
||||||
|
- 40번 / 연소공학
|
||||||
|
- 41번 / 가스설비
|
||||||
|
- 42번 / 가스설비
|
||||||
|
- 43번 / 가스설비
|
||||||
|
- 44번 / 가스설비
|
||||||
|
- 45번 / 가스설비
|
||||||
|
- 46번 / 가스설비
|
||||||
|
- 47번 / 가스설비
|
||||||
|
- 48번 / 가스설비
|
||||||
|
- 49번 / 가스설비
|
||||||
|
- 50번 / 가스설비
|
||||||
|
- 51번 / 가스설비
|
||||||
|
- 52번 / 가스설비
|
||||||
|
- 53번 / 가스설비
|
||||||
|
- 54번 / 가스설비
|
||||||
|
- 55번 / 가스설비
|
||||||
|
- 56번 / 가스설비
|
||||||
|
- 57번 / 가스설비
|
||||||
|
- 58번 / 가스설비
|
||||||
|
- 59번 / 가스설비
|
||||||
|
- 60번 / 가스설비
|
||||||
|
- 61번 / 가스안전관리
|
||||||
|
- 62번 / 가스안전관리
|
||||||
|
- 63번 / 가스안전관리
|
||||||
|
- 64번 / 가스안전관리
|
||||||
|
- 65번 / 가스안전관리
|
||||||
|
- 66번 / 가스안전관리
|
||||||
|
- 67번 / 가스안전관리
|
||||||
|
- 68번 / 가스안전관리
|
||||||
|
- 69번 / 가스안전관리
|
||||||
|
- 70번 / 가스안전관리
|
||||||
|
- 71번 / 가스안전관리
|
||||||
|
- 72번 / 가스안전관리
|
||||||
|
- 73번 / 가스안전관리
|
||||||
|
- 74번 / 가스안전관리
|
||||||
|
- 75번 / 가스안전관리
|
||||||
|
- 76번 / 가스안전관리
|
||||||
|
- 77번 / 가스안전관리
|
||||||
|
- 78번 / 가스안전관리
|
||||||
|
- 79번 / 가스안전관리
|
||||||
|
- 80번 / 가스안전관리
|
||||||
|
- 81번 / 가스계측기기
|
||||||
|
- 82번 / 가스계측기기
|
||||||
|
- 83번 / 가스계측기기
|
||||||
|
- 84번 / 가스계측기기
|
||||||
|
- 85번 / 가스계측기기
|
||||||
|
- 86번 / 가스계측기기
|
||||||
|
- 87번 / 가스계측기기
|
||||||
|
- 88번 / 가스계측기기
|
||||||
|
- 89번 / 가스계측기기
|
||||||
|
- 90번 / 가스계측기기
|
||||||
|
- 91번 / 가스계측기기
|
||||||
|
- 92번 / 가스계측기기
|
||||||
|
- 93번 / 가스계측기기
|
||||||
|
- 94번 / 가스계측기기
|
||||||
|
- 95번 / 가스계측기기
|
||||||
|
- 96번 / 가스계측기기
|
||||||
|
- 97번 / 가스계측기기
|
||||||
|
- 98번 / 가스계측기기
|
||||||
|
- 99번 / 가스계측기기
|
||||||
|
- 100번 / 가스계측기기
|
||||||
|
- **attach_planned — 5건** (apply 시 자동 첨부 예정)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 첨부 예정 (attach_planned) — 5건
|
||||||
|
|
||||||
|
### 4번 / 가스유체역학 / 액주계 (`01_fluid/04_statics/04_액주계_마노미터.md` 참고)
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/4.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/4.png
|
||||||
|
- 설명: 3-fluid U-tube 마노미터 그림 (A 왼쪽, B 오른쪽, γ1·γ2·γ3 fluid 영역, a·b·c 수직 거리 표시)
|
||||||
|
- 상태: attach_planned (apply 시 자동 첨부)
|
||||||
|
|
||||||
|
### 8번 / 가스유체역학 / 압축성 유동·노즐/디퓨저 (`01_fluid/09_compressible/` 참고)
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/8.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/8.png
|
||||||
|
- 설명: 단면이 점진적으로 좁아지는 수렴 덕트 그림 (양쪽 벽이 안쪽으로 기울어진 노즐, 화살표는 흐름 방향)
|
||||||
|
- 상태: attach_planned (apply 시 자동 첨부)
|
||||||
|
|
||||||
|
### 12번 / 가스유체역학 / 압축성 유동·드라발 노즐 (`01_fluid/09_compressible/` 참고)
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/12.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/12.png
|
||||||
|
- 설명: 면적 변화 도관 P/P₀ vs L 그래프 (드라발 노즐 확산부 압력 분포 곡선군 a~k, throat 위치, gg'·hh' 충격파 표시)
|
||||||
|
- 상태: attach_planned (apply 시 자동 첨부)
|
||||||
|
|
||||||
|
### 18번 / 가스유체역학 / 비뉴턴 유체 (`01_fluid/03_viscosity/` 참고)
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/18.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/18.png
|
||||||
|
- 설명: 전단응력 vs 속도구배 그래프, 4개 곡선 (1)~(4): 의사소성·뉴턴·다일레이턴트·빙햄플라스틱 비교
|
||||||
|
- 상태: attach_planned (apply 시 자동 첨부)
|
||||||
|
|
||||||
|
### 21번 / 연소공학 / 열역학 사이클 · 카르노 사이클
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/21.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/21.png
|
||||||
|
- 설명: 카르노 사이클 T-S 선도 (1→2 등온팽창 Q1@T1, 2→3 단열팽창, 3→4 등온압축 Q2@T2, 4→1 단열압축)
|
||||||
|
- 상태: attach_planned (apply 시 자동 첨부)
|
||||||
|
|
||||||
|
## OCR placeholder (참고) — 95건
|
||||||
|
|
||||||
|
마커는 없지만 png 가 존재 — OCR 원본일 가능성. 마커 누락 실수인지 검토.
|
||||||
|
|
||||||
|
### 1번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/1.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/1.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 2번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/2.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/2.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 3번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/3.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/3.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 5번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/5.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/5.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 6번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/6.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/6.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 7번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/7.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/7.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 9번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/9.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/9.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 10번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/10.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/10.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 11번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/11.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/11.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 13번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/13.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/13.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 14번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/14.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/14.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 15번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/15.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/15.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 16번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/16.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/16.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 17번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/17.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/17.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 19번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/19.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/19.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 20번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/20.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/01 가스유체역학/20.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 22번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/22.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/22.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 23번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/23.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/23.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 24번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/24.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/24.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 25번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/25.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/25.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 26번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/26.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/26.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 27번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/27.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/27.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 28번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/28.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/28.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 29번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/29.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/29.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 30번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/30.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/30.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 31번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/31.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/31.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 32번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/32.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/32.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 33번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/33.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/33.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 34번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/34.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/34.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 35번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/35.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/35.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 36번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/36.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/36.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 37번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/37.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/37.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 38번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/38.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/38.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 39번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/39.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/39.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 40번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/40.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/02 연소공학/40.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 41번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/41.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/41.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 42번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/42.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/42.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 43번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/43.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/43.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 44번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/44.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/44.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 45번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/45.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/45.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 46번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/46.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/46.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 47번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/47.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/47.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 48번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/48.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/48.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 49번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/49.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/49.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 50번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/50.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/50.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 51번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/51.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/51.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 52번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/52.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/52.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 53번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/53.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/53.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 54번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/54.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/54.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 55번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/55.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/55.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 56번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/56.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/56.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 57번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/57.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/57.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 58번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/58.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/58.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 59번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/59.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/59.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 60번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/60.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/03 가스설비/60.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 61번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/61.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/61.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 62번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/62.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/62.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 63번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/63.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/63.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 64번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/64.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/64.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 65번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/65.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/65.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 66번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/66.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/66.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 67번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/67.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/67.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 68번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/68.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/68.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 69번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/69.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/69.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 70번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/70.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/70.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 71번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/71.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/71.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 72번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/72.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/72.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 73번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/73.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/73.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 74번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/74.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/74.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 75번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/75.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/75.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 76번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/76.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/76.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 77번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/77.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/77.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 78번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/78.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/78.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 79번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/79.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/79.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 80번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/80.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/04 가스안전관리/80.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 81번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/81.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/81.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 82번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/82.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/82.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 83번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/83.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/83.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 84번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/84.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/84.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 85번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/85.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/85.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 86번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/86.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/86.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 87번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/87.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/87.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 88번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/88.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/88.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 89번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/89.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/89.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 90번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/90.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/90.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 91번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/91.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/91.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 92번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/92.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/92.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 93번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/93.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/93.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 94번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/94.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/94.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 95번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/95.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/95.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 96번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/96.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/96.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 97번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/97.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/97.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 98번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/98.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/98.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 99번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/99.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/99.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 100번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/100.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 2회/05 가스계측기기/100.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
@@ -0,0 +1,615 @@
|
|||||||
|
# 2019년 3회 — 이미지 필요 문항 리포트
|
||||||
|
|
||||||
|
## 사용자가 확인할 것
|
||||||
|
|
||||||
|
- missing_png — 0건
|
||||||
|
- **placeholder_skipped — 99건** (마커 없는데 png 있음 — 실제 도식이면 md 첫 줄에 `**⚠ 이미지 별도 업로드 필요**` 마커 추가 검토)
|
||||||
|
- 1번 / 가스유체역학
|
||||||
|
- 2번 / 가스유체역학
|
||||||
|
- 3번 / 가스유체역학
|
||||||
|
- 4번 / 가스유체역학
|
||||||
|
- 5번 / 가스유체역학
|
||||||
|
- 6번 / 가스유체역학
|
||||||
|
- 7번 / 가스유체역학
|
||||||
|
- 8번 / 가스유체역학
|
||||||
|
- 9번 / 가스유체역학
|
||||||
|
- 11번 / 가스유체역학
|
||||||
|
- 12번 / 가스유체역학
|
||||||
|
- 13번 / 가스유체역학
|
||||||
|
- 14번 / 가스유체역학
|
||||||
|
- 15번 / 가스유체역학
|
||||||
|
- 16번 / 가스유체역학
|
||||||
|
- 17번 / 가스유체역학
|
||||||
|
- 18번 / 가스유체역학
|
||||||
|
- 19번 / 가스유체역학
|
||||||
|
- 20번 / 가스유체역학
|
||||||
|
- 21번 / 연소공학
|
||||||
|
- 22번 / 연소공학
|
||||||
|
- 23번 / 연소공학
|
||||||
|
- 24번 / 연소공학
|
||||||
|
- 25번 / 연소공학
|
||||||
|
- 26번 / 연소공학
|
||||||
|
- 27번 / 연소공학
|
||||||
|
- 28번 / 연소공학
|
||||||
|
- 29번 / 연소공학
|
||||||
|
- 30번 / 연소공학
|
||||||
|
- 31번 / 연소공학
|
||||||
|
- 32번 / 연소공학
|
||||||
|
- 33번 / 연소공학
|
||||||
|
- 34번 / 연소공학
|
||||||
|
- 35번 / 연소공학
|
||||||
|
- 36번 / 연소공학
|
||||||
|
- 37번 / 연소공학
|
||||||
|
- 38번 / 연소공학
|
||||||
|
- 39번 / 연소공학
|
||||||
|
- 40번 / 연소공학
|
||||||
|
- 41번 / 가스설비
|
||||||
|
- 42번 / 가스설비
|
||||||
|
- 43번 / 가스설비
|
||||||
|
- 44번 / 가스설비
|
||||||
|
- 45번 / 가스설비
|
||||||
|
- 46번 / 가스설비
|
||||||
|
- 47번 / 가스설비
|
||||||
|
- 48번 / 가스설비
|
||||||
|
- 49번 / 가스설비
|
||||||
|
- 50번 / 가스설비
|
||||||
|
- 51번 / 가스설비
|
||||||
|
- 52번 / 가스설비
|
||||||
|
- 53번 / 가스설비
|
||||||
|
- 54번 / 가스설비
|
||||||
|
- 55번 / 가스설비
|
||||||
|
- 56번 / 가스설비
|
||||||
|
- 57번 / 가스설비
|
||||||
|
- 58번 / 가스설비
|
||||||
|
- 59번 / 가스설비
|
||||||
|
- 60번 / 가스설비
|
||||||
|
- 61번 / 가스안전관리
|
||||||
|
- 62번 / 가스안전관리
|
||||||
|
- 63번 / 가스안전관리
|
||||||
|
- 64번 / 가스안전관리
|
||||||
|
- 65번 / 가스안전관리
|
||||||
|
- 66번 / 가스안전관리
|
||||||
|
- 67번 / 가스안전관리
|
||||||
|
- 68번 / 가스안전관리
|
||||||
|
- 69번 / 가스안전관리
|
||||||
|
- 70번 / 가스안전관리
|
||||||
|
- 71번 / 가스안전관리
|
||||||
|
- 72번 / 가스안전관리
|
||||||
|
- 73번 / 가스안전관리
|
||||||
|
- 74번 / 가스안전관리
|
||||||
|
- 75번 / 가스안전관리
|
||||||
|
- 76번 / 가스안전관리
|
||||||
|
- 77번 / 가스안전관리
|
||||||
|
- 78번 / 가스안전관리
|
||||||
|
- 79번 / 가스안전관리
|
||||||
|
- 80번 / 가스안전관리
|
||||||
|
- 81번 / 가스계측기기
|
||||||
|
- 82번 / 가스계측기기
|
||||||
|
- 83번 / 가스계측기기
|
||||||
|
- 84번 / 가스계측기기
|
||||||
|
- 85번 / 가스계측기기
|
||||||
|
- 86번 / 가스계측기기
|
||||||
|
- 87번 / 가스계측기기
|
||||||
|
- 88번 / 가스계측기기
|
||||||
|
- 89번 / 가스계측기기
|
||||||
|
- 90번 / 가스계측기기
|
||||||
|
- 91번 / 가스계측기기
|
||||||
|
- 92번 / 가스계측기기
|
||||||
|
- 93번 / 가스계측기기
|
||||||
|
- 94번 / 가스계측기기
|
||||||
|
- 95번 / 가스계측기기
|
||||||
|
- 96번 / 가스계측기기
|
||||||
|
- 97번 / 가스계측기기
|
||||||
|
- 98번 / 가스계측기기
|
||||||
|
- 99번 / 가스계측기기
|
||||||
|
- 100번 / 가스계측기기
|
||||||
|
- **attach_planned — 1건** (apply 시 자동 첨부 예정)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 첨부 예정 (attach_planned) — 1건
|
||||||
|
|
||||||
|
### 10번 / 가스유체역학 / 경사 마노메터 (`01_fluid/04_statics/04_액주계_마노미터.md` 참고)
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/10.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/10.png
|
||||||
|
- 설명: 경사 마노메터 그림 (큰 단면 A₁ 좌측, 경사 R 길이 액주, 작은 단면 A₂ 우측, 각도 θ=30°)
|
||||||
|
- 상태: attach_planned (apply 시 자동 첨부)
|
||||||
|
|
||||||
|
## OCR placeholder (참고) — 99건
|
||||||
|
|
||||||
|
마커는 없지만 png 가 존재 — OCR 원본일 가능성. 마커 누락 실수인지 검토.
|
||||||
|
|
||||||
|
### 1번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/1.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/1.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 2번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/2.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/2.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 3번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/3.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/3.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 4번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/4.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/4.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 5번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/5.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/5.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 6번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/6.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/6.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 7번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/7.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/7.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 8번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/8.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/8.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 9번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/9.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/9.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 11번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/11.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/11.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 12번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/12.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/12.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 13번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/13.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/13.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 14번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/14.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/14.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 15번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/15.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/15.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 16번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/16.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/16.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 17번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/17.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/17.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 18번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/18.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/18.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 19번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/19.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/19.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 20번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/20.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/01 가스유체역학/20.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 21번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/21.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/21.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 22번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/22.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/22.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 23번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/23.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/23.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 24번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/24.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/24.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 25번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/25.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/25.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 26번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/26.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/26.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 27번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/27.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/27.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 28번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/28.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/28.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 29번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/29.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/29.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 30번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/30.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/30.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 31번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/31.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/31.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 32번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/32.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/32.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 33번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/33.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/33.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 34번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/34.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/34.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 35번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/35.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/35.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 36번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/36.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/36.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 37번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/37.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/37.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 38번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/38.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/38.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 39번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/39.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/39.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 40번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/40.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/02 연소공학/40.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 41번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/41.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/41.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 42번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/42.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/42.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 43번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/43.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/43.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 44번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/44.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/44.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 45번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/45.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/45.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 46번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/46.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/46.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 47번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/47.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/47.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 48번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/48.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/48.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 49번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/49.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/49.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 50번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/50.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/50.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 51번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/51.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/51.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 52번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/52.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/52.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 53번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/53.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/53.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 54번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/54.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/54.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 55번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/55.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/55.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 56번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/56.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/56.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 57번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/57.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/57.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 58번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/58.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/58.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 59번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/59.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/59.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 60번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/60.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/03 가스설비/60.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 61번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/61.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/61.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 62번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/62.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/62.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 63번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/63.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/63.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 64번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/64.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/64.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 65번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/65.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/65.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 66번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/66.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/66.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 67번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/67.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/67.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 68번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/68.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/68.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 69번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/69.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/69.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 70번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/70.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/70.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 71번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/71.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/71.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 72번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/72.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/72.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 73번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/73.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/73.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 74번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/74.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/74.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 75번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/75.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/75.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 76번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/76.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/76.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 77번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/77.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/77.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 78번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/78.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/78.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 79번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/79.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/79.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 80번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/80.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/04 가스안전관리/80.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 81번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/81.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/81.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 82번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/82.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/82.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 83번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/83.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/83.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 84번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/84.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/84.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 85번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/85.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/85.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 86번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/86.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/86.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 87번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/87.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/87.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 88번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/88.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/88.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 89번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/89.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/89.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 90번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/90.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/90.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 91번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/91.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/91.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 92번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/92.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/92.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 93번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/93.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/93.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 94번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/94.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/94.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 95번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/95.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/95.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 96번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/96.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/96.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 97번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/97.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/97.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 98번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/98.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/98.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 99번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/99.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/99.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 100번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/100.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2019년 3회/05 가스계측기기/100.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
@@ -0,0 +1,615 @@
|
|||||||
|
# 2020년 1회 — 이미지 필요 문항 리포트
|
||||||
|
|
||||||
|
## 사용자가 확인할 것
|
||||||
|
|
||||||
|
- missing_png — 0건
|
||||||
|
- **placeholder_skipped — 97건** (마커 없는데 png 있음 — 실제 도식이면 md 첫 줄에 `**⚠ 이미지 별도 업로드 필요**` 마커 추가 검토)
|
||||||
|
- 1번 / 가스유체역학
|
||||||
|
- 2번 / 가스유체역학
|
||||||
|
- 3번 / 가스유체역학
|
||||||
|
- 4번 / 가스유체역학
|
||||||
|
- 6번 / 가스유체역학
|
||||||
|
- 7번 / 가스유체역학
|
||||||
|
- 8번 / 가스유체역학
|
||||||
|
- 9번 / 가스유체역학
|
||||||
|
- 10번 / 가스유체역학
|
||||||
|
- 12번 / 가스유체역학
|
||||||
|
- 13번 / 가스유체역학
|
||||||
|
- 14번 / 가스유체역학
|
||||||
|
- 15번 / 가스유체역학
|
||||||
|
- 16번 / 가스유체역학
|
||||||
|
- 18번 / 가스유체역학
|
||||||
|
- 19번 / 가스유체역학
|
||||||
|
- 20번 / 가스유체역학
|
||||||
|
- 21번 / 연소공학
|
||||||
|
- 22번 / 연소공학
|
||||||
|
- 23번 / 연소공학
|
||||||
|
- 24번 / 연소공학
|
||||||
|
- 25번 / 연소공학
|
||||||
|
- 26번 / 연소공학
|
||||||
|
- 27번 / 연소공학
|
||||||
|
- 28번 / 연소공학
|
||||||
|
- 29번 / 연소공학
|
||||||
|
- 30번 / 연소공학
|
||||||
|
- 31번 / 연소공학
|
||||||
|
- 32번 / 연소공학
|
||||||
|
- 33번 / 연소공학
|
||||||
|
- 34번 / 연소공학
|
||||||
|
- 35번 / 연소공학
|
||||||
|
- 36번 / 연소공학
|
||||||
|
- 37번 / 연소공학
|
||||||
|
- 38번 / 연소공학
|
||||||
|
- 39번 / 연소공학
|
||||||
|
- 40번 / 연소공학
|
||||||
|
- 41번 / 가스설비
|
||||||
|
- 42번 / 가스설비
|
||||||
|
- 43번 / 가스설비
|
||||||
|
- 44번 / 가스설비
|
||||||
|
- 45번 / 가스설비
|
||||||
|
- 46번 / 가스설비
|
||||||
|
- 47번 / 가스설비
|
||||||
|
- 48번 / 가스설비
|
||||||
|
- 49번 / 가스설비
|
||||||
|
- 50번 / 가스설비
|
||||||
|
- 51번 / 가스설비
|
||||||
|
- 52번 / 가스설비
|
||||||
|
- 53번 / 가스설비
|
||||||
|
- 54번 / 가스설비
|
||||||
|
- 55번 / 가스설비
|
||||||
|
- 56번 / 가스설비
|
||||||
|
- 57번 / 가스설비
|
||||||
|
- 58번 / 가스설비
|
||||||
|
- 59번 / 가스설비
|
||||||
|
- 60번 / 가스설비
|
||||||
|
- 61번 / 가스안전관리
|
||||||
|
- 62번 / 가스안전관리
|
||||||
|
- 63번 / 가스안전관리
|
||||||
|
- 64번 / 가스안전관리
|
||||||
|
- 65번 / 가스안전관리
|
||||||
|
- 66번 / 가스안전관리
|
||||||
|
- 67번 / 가스안전관리
|
||||||
|
- 68번 / 가스안전관리
|
||||||
|
- 69번 / 가스안전관리
|
||||||
|
- 70번 / 가스안전관리
|
||||||
|
- 71번 / 가스안전관리
|
||||||
|
- 72번 / 가스안전관리
|
||||||
|
- 73번 / 가스안전관리
|
||||||
|
- 74번 / 가스안전관리
|
||||||
|
- 75번 / 가스안전관리
|
||||||
|
- 76번 / 가스안전관리
|
||||||
|
- 77번 / 가스안전관리
|
||||||
|
- 78번 / 가스안전관리
|
||||||
|
- 79번 / 가스안전관리
|
||||||
|
- 80번 / 가스안전관리
|
||||||
|
- 81번 / 가스계측기기
|
||||||
|
- 82번 / 가스계측기기
|
||||||
|
- 83번 / 가스계측기기
|
||||||
|
- 84번 / 가스계측기기
|
||||||
|
- 85번 / 가스계측기기
|
||||||
|
- 86번 / 가스계측기기
|
||||||
|
- 87번 / 가스계측기기
|
||||||
|
- 88번 / 가스계측기기
|
||||||
|
- 89번 / 가스계측기기
|
||||||
|
- 90번 / 가스계측기기
|
||||||
|
- 91번 / 가스계측기기
|
||||||
|
- 92번 / 가스계측기기
|
||||||
|
- 93번 / 가스계측기기
|
||||||
|
- 94번 / 가스계측기기
|
||||||
|
- 95번 / 가스계측기기
|
||||||
|
- 96번 / 가스계측기기
|
||||||
|
- 97번 / 가스계측기기
|
||||||
|
- 98번 / 가스계측기기
|
||||||
|
- 99번 / 가스계측기기
|
||||||
|
- 100번 / 가스계측기기
|
||||||
|
- **attach_planned — 3건** (apply 시 자동 첨부 예정)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 첨부 예정 (attach_planned) — 3건
|
||||||
|
|
||||||
|
### 5번 / 가스유체역학 / 압축성 유동·노즐/디퓨저 (`01_fluid/09_compressible/` 참고)
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/5.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/5.png
|
||||||
|
- 설명: 단면이 점점 커지는 확산기 (Diffuser) 그림, Ma > 1 표시
|
||||||
|
- 상태: attach_planned (apply 시 자동 첨부)
|
||||||
|
|
||||||
|
### 11번 / 가스유체역학 / 연속방정식 (`01_fluid/05_kinematics/` 참고)
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/11.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/11.png
|
||||||
|
- 설명: 관내 흐름 그림 (입구 5cm·20cm 두 갈래, 출구 10cm·40cm; A점·B점 위치 표시)
|
||||||
|
- 상태: attach_planned (apply 시 자동 첨부)
|
||||||
|
|
||||||
|
### 17번 / 가스유체역학 / U자 마노미터·차압 (`01_fluid/04_statics/04_액주계_마노미터.md` 참고)
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/17.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/17.png
|
||||||
|
- 설명: 관에 U자 수은 마노미터 설치, A·B 점 사이 수은 높이차 h=0.7m 표시
|
||||||
|
- 상태: attach_planned (apply 시 자동 첨부)
|
||||||
|
|
||||||
|
## OCR placeholder (참고) — 97건
|
||||||
|
|
||||||
|
마커는 없지만 png 가 존재 — OCR 원본일 가능성. 마커 누락 실수인지 검토.
|
||||||
|
|
||||||
|
### 1번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/1.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/1.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 2번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/2.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/2.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 3번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/3.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/3.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 4번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/4.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/4.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 6번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/6.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/6.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 7번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/7.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/7.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 8번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/8.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/8.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 9번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/9.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/9.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 10번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/10.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/10.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 12번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/12.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/12.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 13번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/13.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/13.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 14번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/14.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/14.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 15번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/15.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/15.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 16번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/16.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/16.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 18번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/18.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/18.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 19번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/19.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/19.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 20번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/20.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/01 가스유체역학/20.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 21번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/21.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/21.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 22번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/22.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/22.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 23번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/23.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/23.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 24번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/24.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/24.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 25번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/25.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/25.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 26번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/26.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/26.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 27번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/27.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/27.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 28번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/28.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/28.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 29번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/29.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/29.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 30번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/30.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/30.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 31번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/31.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/31.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 32번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/32.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/32.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 33번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/33.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/33.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 34번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/34.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/34.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 35번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/35.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/35.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 36번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/36.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/36.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 37번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/37.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/37.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 38번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/38.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/38.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 39번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/39.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/39.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 40번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/40.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/02 연소공학/40.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 41번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/41.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/41.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 42번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/42.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/42.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 43번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/43.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/43.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 44번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/44.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/44.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 45번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/45.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/45.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 46번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/46.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/46.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 47번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/47.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/47.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 48번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/48.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/48.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 49번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/49.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/49.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 50번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/50.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/50.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 51번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/51.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/51.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 52번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/52.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/52.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 53번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/53.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/53.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 54번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/54.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/54.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 55번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/55.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/55.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 56번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/56.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/56.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 57번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/57.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/57.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 58번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/58.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/58.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 59번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/59.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/59.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 60번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/60.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/03 가스설비/60.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 61번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/61.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/61.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 62번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/62.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/62.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 63번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/63.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/63.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 64번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/64.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/64.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 65번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/65.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/65.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 66번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/66.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/66.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 67번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/67.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/67.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 68번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/68.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/68.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 69번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/69.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/69.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 70번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/70.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/70.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 71번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/71.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/71.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 72번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/72.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/72.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 73번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/73.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/73.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 74번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/74.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/74.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 75번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/75.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/75.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 76번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/76.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/76.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 77번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/77.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/77.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 78번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/78.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/78.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 79번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/79.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/79.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 80번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/80.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/04 가스안전관리/80.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 81번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/81.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/81.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 82번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/82.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/82.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 83번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/83.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/83.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 84번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/84.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/84.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 85번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/85.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/85.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 86번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/86.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/86.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 87번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/87.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/87.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 88번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/88.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/88.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 89번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/89.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/89.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 90번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/90.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/90.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 91번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/91.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/91.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 92번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/92.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/92.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 93번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/93.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/93.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 94번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/94.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/94.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 95번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/95.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/95.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 96번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/96.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/96.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 97번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/97.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/97.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 98번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/98.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/98.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 99번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/99.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/99.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 100번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/100.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 1회/05 가스계측기기/100.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
@@ -0,0 +1,613 @@
|
|||||||
|
# 2020년 2회 — 이미지 필요 문항 리포트
|
||||||
|
|
||||||
|
## 사용자가 확인할 것
|
||||||
|
|
||||||
|
- missing_png — 0건
|
||||||
|
- **placeholder_skipped — 100건** (마커 없는데 png 있음 — 실제 도식이면 md 첫 줄에 `**⚠ 이미지 별도 업로드 필요**` 마커 추가 검토)
|
||||||
|
- 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번 / 연소공학
|
||||||
|
- 32번 / 연소공학
|
||||||
|
- 33번 / 연소공학
|
||||||
|
- 34번 / 연소공학
|
||||||
|
- 35번 / 연소공학
|
||||||
|
- 36번 / 연소공학
|
||||||
|
- 37번 / 연소공학
|
||||||
|
- 38번 / 연소공학
|
||||||
|
- 39번 / 연소공학
|
||||||
|
- 40번 / 연소공학
|
||||||
|
- 41번 / 가스설비
|
||||||
|
- 42번 / 가스설비
|
||||||
|
- 43번 / 가스설비
|
||||||
|
- 44번 / 가스설비
|
||||||
|
- 45번 / 가스설비
|
||||||
|
- 46번 / 가스설비
|
||||||
|
- 47번 / 가스설비
|
||||||
|
- 48번 / 가스설비
|
||||||
|
- 49번 / 가스설비
|
||||||
|
- 50번 / 가스설비
|
||||||
|
- 51번 / 가스설비
|
||||||
|
- 52번 / 가스설비
|
||||||
|
- 53번 / 가스설비
|
||||||
|
- 54번 / 가스설비
|
||||||
|
- 55번 / 가스설비
|
||||||
|
- 56번 / 가스설비
|
||||||
|
- 57번 / 가스설비
|
||||||
|
- 58번 / 가스설비
|
||||||
|
- 59번 / 가스설비
|
||||||
|
- 60번 / 가스설비
|
||||||
|
- 61번 / 가스안전관리
|
||||||
|
- 62번 / 가스안전관리
|
||||||
|
- 63번 / 가스안전관리
|
||||||
|
- 64번 / 가스안전관리
|
||||||
|
- 65번 / 가스안전관리
|
||||||
|
- 66번 / 가스안전관리
|
||||||
|
- 67번 / 가스안전관리
|
||||||
|
- 68번 / 가스안전관리
|
||||||
|
- 69번 / 가스안전관리
|
||||||
|
- 70번 / 가스안전관리
|
||||||
|
- 71번 / 가스안전관리
|
||||||
|
- 72번 / 가스안전관리
|
||||||
|
- 73번 / 가스안전관리
|
||||||
|
- 74번 / 가스안전관리
|
||||||
|
- 75번 / 가스안전관리
|
||||||
|
- 76번 / 가스안전관리
|
||||||
|
- 77번 / 가스안전관리
|
||||||
|
- 78번 / 가스안전관리
|
||||||
|
- 79번 / 가스안전관리
|
||||||
|
- 80번 / 가스안전관리
|
||||||
|
- 81번 / 가스계측기기
|
||||||
|
- 82번 / 가스계측기기
|
||||||
|
- 83번 / 가스계측기기
|
||||||
|
- 84번 / 가스계측기기
|
||||||
|
- 85번 / 가스계측기기
|
||||||
|
- 86번 / 가스계측기기
|
||||||
|
- 87번 / 가스계측기기
|
||||||
|
- 88번 / 가스계측기기
|
||||||
|
- 89번 / 가스계측기기
|
||||||
|
- 90번 / 가스계측기기
|
||||||
|
- 91번 / 가스계측기기
|
||||||
|
- 92번 / 가스계측기기
|
||||||
|
- 93번 / 가스계측기기
|
||||||
|
- 94번 / 가스계측기기
|
||||||
|
- 95번 / 가스계측기기
|
||||||
|
- 96번 / 가스계측기기
|
||||||
|
- 97번 / 가스계측기기
|
||||||
|
- 98번 / 가스계측기기
|
||||||
|
- 99번 / 가스계측기기
|
||||||
|
- 100번 / 가스계측기기
|
||||||
|
- **attach_planned — 0건** (apply 시 자동 첨부 예정)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## OCR placeholder (참고) — 100건
|
||||||
|
|
||||||
|
마커는 없지만 png 가 존재 — OCR 원본일 가능성. 마커 누락 실수인지 검토.
|
||||||
|
|
||||||
|
### 1번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/1.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/1.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 2번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/2.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/2.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 3번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/3.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/3.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 4번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/4.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/4.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 5번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/5.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/5.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 6번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/6.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/6.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 7번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/7.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/7.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 8번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/8.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/8.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 9번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/9.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/9.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 10번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/10.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/10.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 11번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/11.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/11.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 12번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/12.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/12.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 13번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/13.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/13.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 14번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/14.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/14.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 15번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/15.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/15.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 16번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/16.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/16.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 17번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/17.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/17.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 18번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/18.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/18.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 19번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/19.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/19.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 20번 / 가스유체역학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/20.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/01 가스유체역학/20.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 21번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/21.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/21.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 22번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/22.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/22.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 23번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/23.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/23.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 24번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/24.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/24.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 25번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/25.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/25.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 26번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/26.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/26.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 27번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/27.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/27.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 28번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/28.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/28.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 29번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/29.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/29.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 30번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/30.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/30.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 31번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/31.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/31.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 32번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/32.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/32.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 33번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/33.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/33.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 34번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/34.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/34.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 35번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/35.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/35.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 36번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/36.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/36.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 37번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/37.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/37.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 38번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/38.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/38.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 39번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/39.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/39.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 40번 / 연소공학
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/40.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/02 연소공학/40.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 41번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/41.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/41.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 42번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/42.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/42.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 43번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/43.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/43.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 44번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/44.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/44.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 45번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/45.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/45.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 46번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/46.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/46.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 47번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/47.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/47.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 48번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/48.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/48.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 49번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/49.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/49.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 50번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/50.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/50.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 51번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/51.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/51.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 52번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/52.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/52.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 53번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/53.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/53.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 54번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/54.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/54.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 55번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/55.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/55.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 56번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/56.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/56.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 57번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/57.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/57.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 58번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/58.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/58.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 59번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/59.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/59.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 60번 / 가스설비
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/60.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/03 가스설비/60.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 61번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/61.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/61.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 62번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/62.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/62.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 63번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/63.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/63.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 64번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/64.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/64.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 65번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/65.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/65.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 66번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/66.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/66.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 67번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/67.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/67.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 68번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/68.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/68.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 69번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/69.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/69.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 70번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/70.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/70.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 71번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/71.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/71.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 72번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/72.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/72.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 73번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/73.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/73.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 74번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/74.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/74.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 75번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/75.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/75.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 76번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/76.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/76.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 77번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/77.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/77.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 78번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/78.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/78.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 79번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/79.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/79.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 80번 / 가스안전관리
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/80.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/04 가스안전관리/80.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 81번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/81.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/81.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 82번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/82.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/82.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 83번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/83.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/83.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 84번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/84.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/84.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 85번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/85.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/85.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 86번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/86.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/86.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 87번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/87.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/87.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 88번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/88.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/88.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 89번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/89.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/89.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 90번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/90.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/90.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 91번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/91.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/91.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 92번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/92.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/92.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 93번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/93.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/93.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 94번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/94.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/94.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 95번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/95.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/95.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 96번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/96.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/96.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 97번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/97.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/97.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 98번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/98.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/98.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 99번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/99.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/99.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
|
|
||||||
|
### 100번 / 가스계측기기
|
||||||
|
- md: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/100.md
|
||||||
|
- png: /Users/hyungiahn/Desktop/가스기사/2020년 2회/05 가스계측기기/100.png
|
||||||
|
- 마커: 없음 — 첨부 안 함
|
||||||
@@ -0,0 +1,722 @@
|
|||||||
|
"""scripts/import_gas_questions.py — 가스기사 기출 md 일괄 import.
|
||||||
|
|
||||||
|
usage:
|
||||||
|
export STUDY_IMPORT_TOKEN=eyJ... # /api/auth/login 으로 발급
|
||||||
|
python scripts/import_gas_questions.py "~/Desktop/가스기사/2019년 2회"
|
||||||
|
python scripts/import_gas_questions.py "~/Desktop/가스기사/2019년 2회" --apply
|
||||||
|
python scripts/import_gas_questions.py "~/Desktop/가스기사/2019년 2회" --apply --skip-existing
|
||||||
|
|
||||||
|
규칙 (plan crispy-petting-dijkstra.md 기준):
|
||||||
|
- exam_question_number 는 파일명/제목/메타 3소스 일치 의무. 불일치 시 dry-run 실패.
|
||||||
|
- 이미지: 첫 줄 "**⚠ 이미지 별도 업로드 필요**" 마커 + {N}.png 매트릭스 4종.
|
||||||
|
· marker yes + png yes → attach_planned (apply 시 첨부)
|
||||||
|
· marker yes + png no → missing_png (dry-run 실패)
|
||||||
|
· marker no + png yes → placeholder_skipped (참고)
|
||||||
|
· marker no + png no → 텍스트 문항 (정상)
|
||||||
|
- outer fence only strip: terminated wrap 또는 unterminated (백틱 그룹 1).
|
||||||
|
- apply 기본 = 첫 실패에서 abort. --continue-on-error / --skip-existing 옵션.
|
||||||
|
- dry-run 시 import_reports/{exam_round}_image_required.md 항상 생성.
|
||||||
|
"""
|
||||||
|
|
||||||
|
from __future__ import annotations
|
||||||
|
|
||||||
|
import argparse
|
||||||
|
import os
|
||||||
|
import re
|
||||||
|
import sys
|
||||||
|
from dataclasses import dataclass, field
|
||||||
|
from pathlib import Path
|
||||||
|
from typing import Optional
|
||||||
|
|
||||||
|
import httpx
|
||||||
|
|
||||||
|
|
||||||
|
API_BASE = os.environ.get("STUDY_IMPORT_API", "https://document.hyungi.net/api")
|
||||||
|
TOPIC_ID = int(os.environ.get("STUDY_IMPORT_TOPIC_ID", "4"))
|
||||||
|
TOKEN = os.environ.get("STUDY_IMPORT_TOKEN", "")
|
||||||
|
|
||||||
|
# 폴더명 → subject 매핑 (NN 접두 + 공백 또는 _ 분리 모두 허용).
|
||||||
|
SUBJECT_MAP = {
|
||||||
|
"01 가스유체역학": "가스유체역학",
|
||||||
|
"01_가스유체역학": "가스유체역학",
|
||||||
|
"01 가스유체": "가스유체역학",
|
||||||
|
"02 연소공학": "연소공학",
|
||||||
|
"02_연소공학": "연소공학",
|
||||||
|
"03 가스설비": "가스설비",
|
||||||
|
"03_가스설비": "가스설비",
|
||||||
|
"04 가스안전관리": "가스안전관리",
|
||||||
|
"04_가스안전관리": "가스안전관리",
|
||||||
|
"05 가스계측기기": "가스계측기기",
|
||||||
|
"05_가스계측기기": "가스계측기기",
|
||||||
|
"05 가스계측": "가스계측기기",
|
||||||
|
}
|
||||||
|
|
||||||
|
CIRCLED = {"①": 1, "②": 2, "③": 3, "④": 4}
|
||||||
|
IMAGE_MARKER = "⚠ 이미지 별도 업로드 필요"
|
||||||
|
|
||||||
|
# subject 정규화: 5개 시험 과목으로 고정. md 가 "연소공학 (열역학)" 같이
|
||||||
|
# 괄호 세부 분류를 가지면 subject 는 head 만, 괄호 안은 scope 앞에 붙임.
|
||||||
|
CANONICAL_SUBJECTS = {
|
||||||
|
"가스유체역학",
|
||||||
|
"연소공학",
|
||||||
|
"가스설비",
|
||||||
|
"가스안전관리",
|
||||||
|
"가스계측기기",
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
def normalize_subject(
|
||||||
|
raw_subject: str, raw_scope: Optional[str]
|
||||||
|
) -> tuple[str, Optional[str]]:
|
||||||
|
"""('연소공학 (열역학)', 'X') → ('연소공학', '열역학 · X')."""
|
||||||
|
s = (raw_subject or "").strip()
|
||||||
|
if not s or s in CANONICAL_SUBJECTS:
|
||||||
|
return s, raw_scope
|
||||||
|
m = re.match(r"^(.+?)\s*\(\s*([^()]+?)\s*\)\s*$", s)
|
||||||
|
if not m:
|
||||||
|
return s, raw_scope
|
||||||
|
head = m.group(1).strip()
|
||||||
|
detail = m.group(2).strip()
|
||||||
|
if head not in CANONICAL_SUBJECTS:
|
||||||
|
# 정규 5과목 외면 정규화 안 함 (사용자 검토 대상)
|
||||||
|
return s, raw_scope
|
||||||
|
if raw_scope:
|
||||||
|
new_scope = f"{detail} · {raw_scope}"
|
||||||
|
else:
|
||||||
|
new_scope = detail
|
||||||
|
return head, new_scope
|
||||||
|
|
||||||
|
|
||||||
|
# ─── outer fence strip (PR-12 stripOuterFence 와 동일 룰) ───
|
||||||
|
|
||||||
|
TERM_RE = re.compile(r"^```[A-Za-z0-9_-]*[ \t]*\n([\s\S]*?)\n```$")
|
||||||
|
UNTERM_RE = re.compile(r"^```[A-Za-z0-9_-]*[ \t]*\n([\s\S]*)$")
|
||||||
|
|
||||||
|
|
||||||
|
def strip_outer_fence(text: str) -> str:
|
||||||
|
"""전체 텍스트가 단일 fenced block 으로 감싸진 경우만 unwrap. 아니면 원본."""
|
||||||
|
if not text:
|
||||||
|
return text
|
||||||
|
trimmed = text.strip()
|
||||||
|
# (1) terminated
|
||||||
|
m = TERM_RE.match(trimmed)
|
||||||
|
if m:
|
||||||
|
inner = m.group(1)
|
||||||
|
if "```" not in inner:
|
||||||
|
return inner
|
||||||
|
return text
|
||||||
|
# (2) unterminated (백틱 그룹 == 1)
|
||||||
|
if trimmed.count("```") == 1:
|
||||||
|
m2 = UNTERM_RE.match(trimmed)
|
||||||
|
if m2:
|
||||||
|
return m2.group(1)
|
||||||
|
return text
|
||||||
|
|
||||||
|
|
||||||
|
# ─── md 파서 ───
|
||||||
|
|
||||||
|
|
||||||
|
@dataclass
|
||||||
|
class ParsedQuestion:
|
||||||
|
file_path: Path
|
||||||
|
exam_round: str # 메타에서 추출
|
||||||
|
exam_question_number: int # 파일명/제목/메타 일치 후
|
||||||
|
subject: str
|
||||||
|
scope: Optional[str]
|
||||||
|
source_note: Optional[str]
|
||||||
|
question_text: str
|
||||||
|
choice_1: str
|
||||||
|
choice_2: str
|
||||||
|
choice_3: str
|
||||||
|
choice_4: str
|
||||||
|
correct_choice: int # 1~4
|
||||||
|
explanation: Optional[str]
|
||||||
|
image_marker: bool
|
||||||
|
image_description: Optional[str]
|
||||||
|
png_path: Optional[Path] # 존재하면 path, 없으면 None
|
||||||
|
parse_errors: list[str] = field(default_factory=list)
|
||||||
|
|
||||||
|
|
||||||
|
@dataclass
|
||||||
|
class ImageStatus:
|
||||||
|
"""4 케이스: attach_planned / missing_png / placeholder_skipped / text_only."""
|
||||||
|
state: str
|
||||||
|
description: Optional[str] = None
|
||||||
|
|
||||||
|
|
||||||
|
def classify_image(p: ParsedQuestion) -> ImageStatus:
|
||||||
|
if p.image_marker and p.png_path and p.png_path.exists():
|
||||||
|
return ImageStatus("attach_planned", p.image_description)
|
||||||
|
if p.image_marker and (not p.png_path or not p.png_path.exists()):
|
||||||
|
return ImageStatus("missing_png", p.image_description)
|
||||||
|
if not p.image_marker and p.png_path and p.png_path.exists():
|
||||||
|
return ImageStatus("placeholder_skipped")
|
||||||
|
return ImageStatus("text_only")
|
||||||
|
|
||||||
|
|
||||||
|
def _extract_section_fence(md: str, header: str) -> Optional[str]:
|
||||||
|
"""### {header} 다음 fenced block 본문. 없으면 None.
|
||||||
|
|
||||||
|
fenced block 이 없으면 다음 ### 또는 EOF 까지 plain 텍스트 가져옴 (fallback).
|
||||||
|
"""
|
||||||
|
pat_fenced = re.compile(
|
||||||
|
rf"^### {re.escape(header)}\s*$\s*\n```[A-Za-z0-9_-]*[ \t]*\n([\s\S]*?)\n```",
|
||||||
|
re.MULTILINE,
|
||||||
|
)
|
||||||
|
m = pat_fenced.search(md)
|
||||||
|
if m:
|
||||||
|
return m.group(1).rstrip()
|
||||||
|
# fallback — fence 없는 경우
|
||||||
|
pat_plain = re.compile(
|
||||||
|
rf"^### {re.escape(header)}\s*$\s*\n([\s\S]*?)(?=^###|\Z)",
|
||||||
|
re.MULTILINE,
|
||||||
|
)
|
||||||
|
m = pat_plain.search(md)
|
||||||
|
if m:
|
||||||
|
return m.group(1).strip()
|
||||||
|
return None
|
||||||
|
|
||||||
|
|
||||||
|
def _extract_meta(md: str) -> dict[str, str]:
|
||||||
|
"""### 메타 섹션의 - **키**: 값 항목 dict."""
|
||||||
|
out: dict[str, str] = {}
|
||||||
|
section = re.search(r"^### 메타\s*$\s*\n([\s\S]*?)(?=^###|\Z)", md, re.MULTILINE)
|
||||||
|
if not section:
|
||||||
|
return out
|
||||||
|
body = section.group(1)
|
||||||
|
for line in body.splitlines():
|
||||||
|
m = re.match(r"^\s*-\s*\*\*([^*]+)\*\*\s*:\s*(.+?)\s*$", line)
|
||||||
|
if m:
|
||||||
|
out[m.group(1).strip()] = m.group(2).strip()
|
||||||
|
return out
|
||||||
|
|
||||||
|
|
||||||
|
def _parse_choices(raw: str) -> tuple[str, str, str, str]:
|
||||||
|
"""보기 fenced block → 4개 텍스트.
|
||||||
|
|
||||||
|
한 줄당 "{N}번: ..." 형태. 멀티라인 보기는 다음 N번 보기 직전까지 합침.
|
||||||
|
"""
|
||||||
|
lines = raw.splitlines()
|
||||||
|
buckets: dict[int, list[str]] = {1: [], 2: [], 3: [], 4: []}
|
||||||
|
current: Optional[int] = None
|
||||||
|
for line in lines:
|
||||||
|
m = re.match(r"^\s*(\d)번\s*:\s*(.*)$", line)
|
||||||
|
if m:
|
||||||
|
current = int(m.group(1))
|
||||||
|
if 1 <= current <= 4:
|
||||||
|
buckets[current].append(m.group(2).rstrip())
|
||||||
|
else:
|
||||||
|
current = None
|
||||||
|
elif current is not None:
|
||||||
|
stripped = line.rstrip()
|
||||||
|
if stripped:
|
||||||
|
buckets[current].append(stripped)
|
||||||
|
result: list[str] = []
|
||||||
|
for i in (1, 2, 3, 4):
|
||||||
|
joined = "\n".join(buckets[i]).strip()
|
||||||
|
result.append(joined)
|
||||||
|
return tuple(result) # type: ignore
|
||||||
|
|
||||||
|
|
||||||
|
def _parse_correct(raw: str) -> Optional[int]:
|
||||||
|
"""### 정답 본문에서 1~4 추출. **N** 우선, ①~④ 폴백."""
|
||||||
|
if not raw:
|
||||||
|
return None
|
||||||
|
text = raw.strip()
|
||||||
|
m = re.search(r"\*\*\s*([1-4])\s*\*\*", text)
|
||||||
|
if m:
|
||||||
|
return int(m.group(1))
|
||||||
|
for ch, n in CIRCLED.items():
|
||||||
|
if ch in text:
|
||||||
|
return n
|
||||||
|
m2 = re.search(r"\b([1-4])\b", text)
|
||||||
|
if m2:
|
||||||
|
return int(m2.group(1))
|
||||||
|
return None
|
||||||
|
|
||||||
|
|
||||||
|
def parse_md(file_path: Path) -> ParsedQuestion:
|
||||||
|
"""단일 md 파싱. parse_errors 비어있으면 OK, 있으면 dry-run 실패 사유."""
|
||||||
|
md = file_path.read_text(encoding="utf-8")
|
||||||
|
errors: list[str] = []
|
||||||
|
|
||||||
|
# 첫 줄 + 이미지 마커
|
||||||
|
lines = md.splitlines()
|
||||||
|
title_line = lines[0] if lines else ""
|
||||||
|
image_marker = False
|
||||||
|
image_desc: Optional[str] = None
|
||||||
|
for line in lines[1:6]:
|
||||||
|
if IMAGE_MARKER in line:
|
||||||
|
image_marker = True
|
||||||
|
mdesc = re.search(r"이미지 별도 업로드 필요\s*\*\*\s*[—\-]\s*(.+)$", line)
|
||||||
|
if mdesc:
|
||||||
|
image_desc = mdesc.group(1).strip()
|
||||||
|
break
|
||||||
|
|
||||||
|
# 제목에서 회차/과목/번호 추출
|
||||||
|
title_qnum: Optional[int] = None
|
||||||
|
title_round: Optional[str] = None
|
||||||
|
title_subject: Optional[str] = None
|
||||||
|
m_title = re.match(r"^#\s*(.+?)\s+(\S+)\s+(\d+)번\s*$", title_line)
|
||||||
|
if m_title:
|
||||||
|
title_round = m_title.group(1).strip()
|
||||||
|
title_subject = m_title.group(2).strip()
|
||||||
|
title_qnum = int(m_title.group(3))
|
||||||
|
|
||||||
|
# 파일명에서 번호
|
||||||
|
file_qnum: Optional[int] = None
|
||||||
|
m_file = re.match(r"^(\d+)\.md$", file_path.name)
|
||||||
|
if m_file:
|
||||||
|
file_qnum = int(m_file.group(1))
|
||||||
|
|
||||||
|
# 메타
|
||||||
|
meta = _extract_meta(md)
|
||||||
|
meta_qnum: Optional[int] = None
|
||||||
|
if "문항 번호" in meta:
|
||||||
|
try:
|
||||||
|
meta_qnum = int(meta["문항 번호"])
|
||||||
|
except ValueError:
|
||||||
|
errors.append(f"메타 문항 번호 파싱 실패: {meta['문항 번호']!r}")
|
||||||
|
|
||||||
|
# 3 소스 일치 검증
|
||||||
|
qnums = {x for x in (file_qnum, title_qnum, meta_qnum) if x is not None}
|
||||||
|
if len(qnums) == 0:
|
||||||
|
errors.append("문항 번호 추출 실패 (파일명/제목/메타 모두)")
|
||||||
|
final_qnum = -1
|
||||||
|
elif len(qnums) > 1:
|
||||||
|
errors.append(
|
||||||
|
f"문항 번호 불일치: 파일명={file_qnum} 제목={title_qnum} 메타={meta_qnum}"
|
||||||
|
)
|
||||||
|
final_qnum = file_qnum or title_qnum or meta_qnum or -1
|
||||||
|
else:
|
||||||
|
final_qnum = qnums.pop()
|
||||||
|
|
||||||
|
# 메타 필수 — subject / exam_round
|
||||||
|
subject_meta = meta.get("과목", "").strip()
|
||||||
|
if not subject_meta:
|
||||||
|
# 폴더명 폴백
|
||||||
|
folder = file_path.parent.name
|
||||||
|
subject_meta = SUBJECT_MAP.get(folder, "")
|
||||||
|
if not subject_meta:
|
||||||
|
errors.append("과목 메타 누락")
|
||||||
|
|
||||||
|
exam_round = meta.get("회차", "").strip()
|
||||||
|
if not exam_round and title_round:
|
||||||
|
exam_round = title_round
|
||||||
|
if not exam_round:
|
||||||
|
errors.append("회차 메타 누락")
|
||||||
|
|
||||||
|
scope = meta.get("범위", "").strip() or None
|
||||||
|
source_note = meta.get("출처/메모", "").strip() or None
|
||||||
|
|
||||||
|
# subject 정규화: 괄호 세부 분류는 scope 로 이동. 5과목 외면 그대로 보존.
|
||||||
|
subject_meta, scope = normalize_subject(subject_meta, scope)
|
||||||
|
|
||||||
|
# 본문/보기/정답/해설
|
||||||
|
qtext_raw = _extract_section_fence(md, "문제 본문")
|
||||||
|
if qtext_raw is None:
|
||||||
|
errors.append("### 문제 본문 섹션 없음")
|
||||||
|
qtext_raw = ""
|
||||||
|
question_text = strip_outer_fence(qtext_raw).strip()
|
||||||
|
if not question_text:
|
||||||
|
errors.append("문제 본문 비어있음")
|
||||||
|
|
||||||
|
choices_raw = _extract_section_fence(md, "보기")
|
||||||
|
if choices_raw is None:
|
||||||
|
errors.append("### 보기 섹션 없음")
|
||||||
|
c1, c2, c3, c4 = "", "", "", ""
|
||||||
|
else:
|
||||||
|
c1, c2, c3, c4 = _parse_choices(strip_outer_fence(choices_raw))
|
||||||
|
for i, c in enumerate((c1, c2, c3, c4), 1):
|
||||||
|
if not c:
|
||||||
|
errors.append(f"보기 {i}번 비어있음")
|
||||||
|
|
||||||
|
correct_raw = _extract_section_fence(md, "정답")
|
||||||
|
if correct_raw is None:
|
||||||
|
# ### 정답 다음 단순 한 줄 (fenced 없는 경우 _extract_section_fence 가 fallback 처리)
|
||||||
|
errors.append("### 정답 섹션 없음")
|
||||||
|
correct = -1
|
||||||
|
else:
|
||||||
|
cc = _parse_correct(correct_raw)
|
||||||
|
if cc is None:
|
||||||
|
errors.append(f"정답 파싱 실패: {correct_raw[:50]!r}")
|
||||||
|
correct = -1
|
||||||
|
else:
|
||||||
|
correct = cc
|
||||||
|
|
||||||
|
expl_raw = _extract_section_fence(md, "해설")
|
||||||
|
explanation = strip_outer_fence(expl_raw).strip() if expl_raw else None
|
||||||
|
|
||||||
|
# 이미지 png 경로
|
||||||
|
png_path: Optional[Path] = None
|
||||||
|
if file_qnum is not None:
|
||||||
|
candidate = file_path.parent / f"{file_qnum}.png"
|
||||||
|
if candidate.exists():
|
||||||
|
png_path = candidate
|
||||||
|
|
||||||
|
# 이미지 4 케이스 검증
|
||||||
|
if image_marker and (png_path is None):
|
||||||
|
errors.append(f"이미지 마커 있는데 png 누락: {file_qnum}.png")
|
||||||
|
|
||||||
|
return ParsedQuestion(
|
||||||
|
file_path=file_path,
|
||||||
|
exam_round=exam_round,
|
||||||
|
exam_question_number=final_qnum,
|
||||||
|
subject=subject_meta,
|
||||||
|
scope=scope,
|
||||||
|
source_note=source_note,
|
||||||
|
question_text=question_text,
|
||||||
|
choice_1=c1,
|
||||||
|
choice_2=c2,
|
||||||
|
choice_3=c3,
|
||||||
|
choice_4=c4,
|
||||||
|
correct_choice=correct,
|
||||||
|
explanation=explanation,
|
||||||
|
image_marker=image_marker,
|
||||||
|
image_description=image_desc,
|
||||||
|
png_path=png_path,
|
||||||
|
parse_errors=errors,
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
# ─── HTTP client ───
|
||||||
|
|
||||||
|
|
||||||
|
def _client() -> httpx.Client:
|
||||||
|
if not TOKEN:
|
||||||
|
print("ERROR: STUDY_IMPORT_TOKEN 환경변수 필요. /api/auth/login 으로 발급.", file=sys.stderr)
|
||||||
|
sys.exit(2)
|
||||||
|
return httpx.Client(
|
||||||
|
base_url=API_BASE,
|
||||||
|
headers={"Authorization": f"Bearer {TOKEN}"},
|
||||||
|
timeout=30.0,
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
def verify_token(c: httpx.Client) -> dict:
|
||||||
|
"""GET /study-topics/{TOPIC_ID} 로 토큰 + 접근 권한 검사. 실패 시 exit."""
|
||||||
|
r = c.get(f"/study-topics/{TOPIC_ID}")
|
||||||
|
if r.status_code == 200:
|
||||||
|
return r.json()
|
||||||
|
print(f"ERROR: 토큰/권한 검증 실패 ({r.status_code}): {r.text[:200]}", file=sys.stderr)
|
||||||
|
sys.exit(3)
|
||||||
|
|
||||||
|
|
||||||
|
def fetch_existing_for_conflict(c: httpx.Client, exam_round: str) -> dict[int, dict]:
|
||||||
|
"""충돌 출력용 — qnum → 기존 행 메타.
|
||||||
|
|
||||||
|
/study-topics/{tid}/questions 의 StudyQuestionSummary 에는 exam_question_number
|
||||||
|
필드가 없어 통합뷰 detail (StudyTopicQuestionSummary, exam_question_number 포함)
|
||||||
|
을 사용한다. PR-11 에서 추가됨.
|
||||||
|
"""
|
||||||
|
out: dict[int, dict] = {}
|
||||||
|
r = c.get(f"/study-topics/{TOPIC_ID}")
|
||||||
|
r.raise_for_status()
|
||||||
|
body = r.json()
|
||||||
|
for it in body.get("sections", {}).get("questions", []):
|
||||||
|
if it.get("exam_round") == exam_round and it.get("exam_question_number"):
|
||||||
|
out[int(it["exam_question_number"])] = {
|
||||||
|
"id": it["id"],
|
||||||
|
"subject": it.get("subject"),
|
||||||
|
"scope": it.get("scope"),
|
||||||
|
}
|
||||||
|
return out
|
||||||
|
|
||||||
|
|
||||||
|
def post_question(c: httpx.Client, p: ParsedQuestion) -> dict:
|
||||||
|
body = {
|
||||||
|
"question_text": p.question_text,
|
||||||
|
"choice_1": p.choice_1,
|
||||||
|
"choice_2": p.choice_2,
|
||||||
|
"choice_3": p.choice_3,
|
||||||
|
"choice_4": p.choice_4,
|
||||||
|
"correct_choice": p.correct_choice,
|
||||||
|
"subject": p.subject or None,
|
||||||
|
"scope": p.scope,
|
||||||
|
"exam_name": None,
|
||||||
|
"exam_round": p.exam_round,
|
||||||
|
"exam_question_number": p.exam_question_number, # 항상 명시
|
||||||
|
"explanation": p.explanation,
|
||||||
|
"source_note": p.source_note,
|
||||||
|
"is_active": True,
|
||||||
|
}
|
||||||
|
r = c.post(f"/study-topics/{TOPIC_ID}/questions", json=body)
|
||||||
|
if r.status_code != 201:
|
||||||
|
raise RuntimeError(f"POST 실패 ({r.status_code}): {r.text[:300]}")
|
||||||
|
return r.json()
|
||||||
|
|
||||||
|
|
||||||
|
def post_image(c: httpx.Client, qid: int, png_path: Path) -> dict:
|
||||||
|
with png_path.open("rb") as f:
|
||||||
|
r = c.post(
|
||||||
|
f"/study-questions/{qid}/images",
|
||||||
|
files={"file": (png_path.name, f, "image/png")},
|
||||||
|
)
|
||||||
|
if r.status_code != 201:
|
||||||
|
raise RuntimeError(f"이미지 POST 실패 qid={qid} ({r.status_code}): {r.text[:300]}")
|
||||||
|
return r.json()
|
||||||
|
|
||||||
|
|
||||||
|
# ─── 리포트 ───
|
||||||
|
|
||||||
|
|
||||||
|
def write_image_report(out_dir: Path, exam_round: str, items: list[ParsedQuestion]) -> Path:
|
||||||
|
out_dir.mkdir(parents=True, exist_ok=True)
|
||||||
|
safe_round = exam_round.replace("/", "_").replace(" ", "_")
|
||||||
|
out_path = out_dir / f"{safe_round}_image_required.md"
|
||||||
|
|
||||||
|
classified: dict[str, list[ParsedQuestion]] = {
|
||||||
|
"attach_planned": [], "missing_png": [], "placeholder_skipped": []
|
||||||
|
}
|
||||||
|
for p in items:
|
||||||
|
s = classify_image(p).state
|
||||||
|
if s in classified:
|
||||||
|
classified[s].append(p)
|
||||||
|
|
||||||
|
lines: list[str] = []
|
||||||
|
lines.append(f"# {exam_round} — 이미지 필요 문항 리포트\n")
|
||||||
|
|
||||||
|
lines.append("## 사용자가 확인할 것\n")
|
||||||
|
n_missing = len(classified["missing_png"])
|
||||||
|
n_placeholder = len(classified["placeholder_skipped"])
|
||||||
|
n_attach = len(classified["attach_planned"])
|
||||||
|
|
||||||
|
if n_missing > 0:
|
||||||
|
lines.append(f"- **missing_png — {n_missing}건 ⚠** (이 항목이 있으면 apply 금지)")
|
||||||
|
for p in classified["missing_png"]:
|
||||||
|
lines.append(f" - {p.exam_question_number}번 / {p.subject} — {p.exam_question_number}.png 필요")
|
||||||
|
else:
|
||||||
|
lines.append("- missing_png — 0건")
|
||||||
|
|
||||||
|
if n_placeholder > 0:
|
||||||
|
lines.append(
|
||||||
|
f"- **placeholder_skipped — {n_placeholder}건** "
|
||||||
|
"(마커 없는데 png 있음 — 실제 도식이면 md 첫 줄에 `**⚠ 이미지 별도 업로드 필요**` 마커 추가 검토)"
|
||||||
|
)
|
||||||
|
for p in classified["placeholder_skipped"]:
|
||||||
|
lines.append(f" - {p.exam_question_number}번 / {p.subject}")
|
||||||
|
else:
|
||||||
|
lines.append("- placeholder_skipped — 0건")
|
||||||
|
|
||||||
|
lines.append(f"- **attach_planned — {n_attach}건** (apply 시 자동 첨부 예정)")
|
||||||
|
lines.append("")
|
||||||
|
|
||||||
|
lines.append("---\n")
|
||||||
|
|
||||||
|
if n_attach > 0:
|
||||||
|
lines.append(f"## 첨부 예정 (attach_planned) — {n_attach}건\n")
|
||||||
|
for p in classified["attach_planned"]:
|
||||||
|
lines.append(f"### {p.exam_question_number}번 / {p.subject}{' / ' + p.scope if p.scope else ''}")
|
||||||
|
lines.append(f"- md: {p.file_path}")
|
||||||
|
lines.append(f"- png: {p.png_path}")
|
||||||
|
lines.append(f"- 설명: {p.image_description or '(없음)'}")
|
||||||
|
lines.append("- 상태: attach_planned (apply 시 자동 첨부)\n")
|
||||||
|
|
||||||
|
if n_missing > 0:
|
||||||
|
lines.append(f"## 누락 (missing_png) — {n_missing}건 ⚠\n")
|
||||||
|
for p in classified["missing_png"]:
|
||||||
|
lines.append(f"### {p.exam_question_number}번 / {p.subject}{' / ' + p.scope if p.scope else ''}")
|
||||||
|
lines.append(f"- md: {p.file_path}")
|
||||||
|
lines.append(f"- png: MISSING ({p.exam_question_number}.png)")
|
||||||
|
lines.append(f"- 설명: {p.image_description or '(없음)'}")
|
||||||
|
lines.append("- 상태: missing_png (dry-run 실패. apply 금지)")
|
||||||
|
lines.append("- 처리: 이미지 파일 필요\n")
|
||||||
|
|
||||||
|
if n_placeholder > 0:
|
||||||
|
lines.append(f"## OCR placeholder (참고) — {n_placeholder}건\n")
|
||||||
|
lines.append("마커는 없지만 png 가 존재 — OCR 원본일 가능성. 마커 누락 실수인지 검토.\n")
|
||||||
|
for p in classified["placeholder_skipped"]:
|
||||||
|
lines.append(f"### {p.exam_question_number}번 / {p.subject}")
|
||||||
|
lines.append(f"- md: {p.file_path}")
|
||||||
|
lines.append(f"- png: {p.png_path}")
|
||||||
|
lines.append("- 마커: 없음 — 첨부 안 함\n")
|
||||||
|
|
||||||
|
out_path.write_text("\n".join(lines), encoding="utf-8")
|
||||||
|
return out_path
|
||||||
|
|
||||||
|
|
||||||
|
# ─── 메인 ───
|
||||||
|
|
||||||
|
|
||||||
|
def discover_md_files(round_dir: Path) -> list[Path]:
|
||||||
|
"""회차 폴더 안 모든 *.md 수집. 폴더 정렬 + 파일 번호 정렬."""
|
||||||
|
out: list[Path] = []
|
||||||
|
if not round_dir.is_dir():
|
||||||
|
return out
|
||||||
|
for sub in sorted(round_dir.iterdir()):
|
||||||
|
if not sub.is_dir():
|
||||||
|
continue
|
||||||
|
for f in sub.glob("*.md"):
|
||||||
|
out.append(f)
|
||||||
|
return sorted(out, key=lambda p: (p.parent.name, int(re.match(r"^(\d+)", p.name).group(1)) if re.match(r"^\d", p.name) else 9999))
|
||||||
|
|
||||||
|
|
||||||
|
def cmd_run(round_dir: Path, apply: bool, skip_existing: bool, continue_on_error: bool) -> int:
|
||||||
|
print(f"[{'APPLY' if apply else 'DRY-RUN'}] 회차 폴더: {round_dir}\n")
|
||||||
|
md_files = discover_md_files(round_dir)
|
||||||
|
if not md_files:
|
||||||
|
print("md 파일 없음.", file=sys.stderr)
|
||||||
|
return 1
|
||||||
|
print(f"발견 md: {len(md_files)}개\n")
|
||||||
|
|
||||||
|
# 1차 — 파싱
|
||||||
|
parsed: list[ParsedQuestion] = []
|
||||||
|
parse_failed: list[ParsedQuestion] = []
|
||||||
|
for f in md_files:
|
||||||
|
p = parse_md(f)
|
||||||
|
parsed.append(p)
|
||||||
|
if p.parse_errors:
|
||||||
|
parse_failed.append(p)
|
||||||
|
|
||||||
|
# 회차명 (모든 파싱 결과의 exam_round 가 같아야 함)
|
||||||
|
rounds = {p.exam_round for p in parsed if p.exam_round}
|
||||||
|
if len(rounds) != 1:
|
||||||
|
print(f"회차명 불일치: {rounds}", file=sys.stderr)
|
||||||
|
return 1
|
||||||
|
exam_round = next(iter(rounds))
|
||||||
|
|
||||||
|
# 분포 + 이미지 분류
|
||||||
|
by_subject: dict[str, int] = {}
|
||||||
|
for p in parsed:
|
||||||
|
by_subject[p.subject] = by_subject.get(p.subject, 0) + 1
|
||||||
|
print(f"회차: {exam_round}")
|
||||||
|
print(f"과목 분포: {', '.join(f'{k} {v}' for k, v in by_subject.items())}\n")
|
||||||
|
|
||||||
|
# 이미지 4 케이스
|
||||||
|
img_attach = [p for p in parsed if classify_image(p).state == "attach_planned"]
|
||||||
|
img_missing = [p for p in parsed if classify_image(p).state == "missing_png"]
|
||||||
|
img_placeholder = [p for p in parsed if classify_image(p).state == "placeholder_skipped"]
|
||||||
|
print(f"이미지 첨부 예정: {len(img_attach)}건 / 누락: {len(img_missing)}건 / placeholder: {len(img_placeholder)}건\n")
|
||||||
|
|
||||||
|
# 리포트 항상 생성
|
||||||
|
report_dir = Path(__file__).parent.parent / "import_reports"
|
||||||
|
report_path = write_image_report(report_dir, exam_round, parsed)
|
||||||
|
print(f"리포트 저장: {report_path}\n")
|
||||||
|
|
||||||
|
# 파싱 실패 출력
|
||||||
|
if parse_failed:
|
||||||
|
print(f"⚠ 파싱 실패: {len(parse_failed)}건")
|
||||||
|
for p in parse_failed:
|
||||||
|
print(f" {p.file_path}")
|
||||||
|
for e in p.parse_errors:
|
||||||
|
print(f" - {e}")
|
||||||
|
print()
|
||||||
|
|
||||||
|
# 토큰 검사 + 충돌 검사
|
||||||
|
with _client() as c:
|
||||||
|
verify_token(c)
|
||||||
|
existing = fetch_existing_for_conflict(c, exam_round)
|
||||||
|
|
||||||
|
conflicts = [p for p in parsed if p.exam_question_number in existing]
|
||||||
|
if conflicts:
|
||||||
|
print(f"⚠ 서버 충돌: {len(conflicts)}건 (같은 회차+문항번호 이미 등록)")
|
||||||
|
for p in conflicts:
|
||||||
|
ex = existing[p.exam_question_number]
|
||||||
|
print(f" 충돌: {p.exam_round} {p.exam_question_number}번")
|
||||||
|
print(f" - 기존: id={ex['id']}, subject={ex['subject']}, scope={ex.get('scope')}")
|
||||||
|
print(f" - import: file={p.file_path}, subject={p.subject}, scope={p.scope}")
|
||||||
|
print()
|
||||||
|
|
||||||
|
# Dry-run 종료 판정
|
||||||
|
if not apply:
|
||||||
|
# dry-run 결과 — 통과/실패 판정만 출력
|
||||||
|
print("─── DRY-RUN 결과 ───")
|
||||||
|
ok = (
|
||||||
|
not parse_failed
|
||||||
|
and not img_missing
|
||||||
|
and (not conflicts or skip_existing)
|
||||||
|
)
|
||||||
|
if ok:
|
||||||
|
target = [p for p in parsed if p.exam_question_number not in existing] if skip_existing else parsed
|
||||||
|
print(f"✓ apply 가능 — 등록 예정 {len(target)}건 (이미지 첨부 {sum(1 for p in target if classify_image(p).state == 'attach_planned')}건)")
|
||||||
|
else:
|
||||||
|
print("✗ apply 불가:")
|
||||||
|
if parse_failed:
|
||||||
|
print(f" - 파싱 실패 {len(parse_failed)}건 (md 수정 필요)")
|
||||||
|
if img_missing:
|
||||||
|
print(f" - 이미지 누락 {len(img_missing)}건 (png 추가 필요)")
|
||||||
|
if conflicts and not skip_existing:
|
||||||
|
print(f" - 서버 충돌 {len(conflicts)}건 (--skip-existing 으로 우회 가능)")
|
||||||
|
return 0 if ok else 1
|
||||||
|
|
||||||
|
# ─── APPLY ───
|
||||||
|
if parse_failed and not continue_on_error:
|
||||||
|
print("✗ 파싱 실패 있음. apply 중단.", file=sys.stderr)
|
||||||
|
return 1
|
||||||
|
if img_missing and not continue_on_error:
|
||||||
|
print("✗ 이미지 누락 있음. apply 중단.", file=sys.stderr)
|
||||||
|
return 1
|
||||||
|
if conflicts and not skip_existing:
|
||||||
|
print("✗ 서버 충돌 있음. --skip-existing 옵션 필요.", file=sys.stderr)
|
||||||
|
return 1
|
||||||
|
|
||||||
|
target = [
|
||||||
|
p for p in parsed
|
||||||
|
if p.exam_question_number not in existing
|
||||||
|
and not p.parse_errors
|
||||||
|
and classify_image(p).state != "missing_png"
|
||||||
|
]
|
||||||
|
print(f"\n등록 시작: {len(target)}건\n")
|
||||||
|
|
||||||
|
registered = 0
|
||||||
|
failed_q: list[tuple[ParsedQuestion, str]] = []
|
||||||
|
img_success = 0
|
||||||
|
img_fail: list[tuple[int, str]] = []
|
||||||
|
|
||||||
|
with _client() as c:
|
||||||
|
for p in target:
|
||||||
|
try:
|
||||||
|
resp = post_question(c, p)
|
||||||
|
qid = resp["id"]
|
||||||
|
registered += 1
|
||||||
|
print(f" ✓ {p.exam_question_number}번 등록 (qid={qid})")
|
||||||
|
|
||||||
|
if classify_image(p).state == "attach_planned" and p.png_path is not None:
|
||||||
|
try:
|
||||||
|
post_image(c, qid, p.png_path)
|
||||||
|
img_success += 1
|
||||||
|
print(f" + 이미지 첨부 OK ({p.png_path.name})")
|
||||||
|
except Exception as ie:
|
||||||
|
img_fail.append((qid, str(ie)))
|
||||||
|
print(f" ⚠ 이미지 첨부 실패 qid={qid}: {ie}", file=sys.stderr)
|
||||||
|
if not continue_on_error:
|
||||||
|
print(
|
||||||
|
f"\n abort. qid={qid} 까지 등록됨. "
|
||||||
|
f"실패한 png={p.png_path}. "
|
||||||
|
f"문제 수정 후 --skip-existing 으로 재실행 가능.",
|
||||||
|
file=sys.stderr,
|
||||||
|
)
|
||||||
|
return 2
|
||||||
|
except Exception as e:
|
||||||
|
failed_q.append((p, str(e)))
|
||||||
|
print(f" ✗ {p.exam_question_number}번 실패: {e}", file=sys.stderr)
|
||||||
|
if not continue_on_error:
|
||||||
|
print(
|
||||||
|
f"\n abort. 이전 {registered}건 등록됨. "
|
||||||
|
f"실패: {p.exam_round} {p.exam_question_number}번 ({p.file_path}). "
|
||||||
|
f"수정 후 --skip-existing 으로 재실행 가능.",
|
||||||
|
file=sys.stderr,
|
||||||
|
)
|
||||||
|
return 2
|
||||||
|
|
||||||
|
print(f"\n─── APPLY 결과 ───")
|
||||||
|
print(f"등록: {registered} / 실패: {len(failed_q)}")
|
||||||
|
print(f"이미지 첨부: 성공 {img_success} / 실패 {len(img_fail)} / placeholder skip {len(img_placeholder)}")
|
||||||
|
print("임베딩 트리거 자동. 1분 후 ready 예상.")
|
||||||
|
return 0
|
||||||
|
|
||||||
|
|
||||||
|
def main() -> None:
|
||||||
|
p = argparse.ArgumentParser()
|
||||||
|
p.add_argument("round_dir", help="회차 폴더 (예: ~/Desktop/가스기사/2019년 2회)")
|
||||||
|
p.add_argument("--apply", action="store_true", help="실제 import (기본은 dry-run)")
|
||||||
|
p.add_argument("--skip-existing", action="store_true", help="서버 충돌 문항 skip")
|
||||||
|
p.add_argument("--continue-on-error", action="store_true", help="한 문항 실패해도 다음 진행")
|
||||||
|
args = p.parse_args()
|
||||||
|
|
||||||
|
round_dir = Path(args.round_dir).expanduser().resolve()
|
||||||
|
sys.exit(cmd_run(round_dir, apply=args.apply, skip_existing=args.skip_existing, continue_on_error=args.continue_on_error))
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main()
|
||||||
Reference in New Issue
Block a user