53점을 받은 그 20문항을 시계를 켜고 다시 푼다. 7점이 어느 묶음에서 샜는지가 여기서 숫자로 나온다
왜 이걸 하나 — 진단은 시험장과 같은 조건에서만 뜻이 있다. 조건이 느슨하면 숫자가 거짓이 된다.
02절의 시작 버튼을 누르면 150분 시계가 돈다. 그 뒤로는 시험장에서 하는 것만 한다. 종이와 펜을 옆에 두고, 코드는 종이에 변수표를 그리며 따라간다.
| 구간 | 시간 | 무엇 |
|---|---|---|
| 1회독 | 100분 | 1번부터 20번까지 차례로. 한 문항에 5분이 넘으면 답 칸을 비우고 넘어간다 |
| 2회독 | 40분 | 비운 문항만 돌아간다. 코드 추적은 여기서 종이에 표를 그린다 |
| 검토 | 10분 | 답 칸을 처음부터 읽는다. 문제가 묻는 것(기호인가 이름인가, 단위가 있나)과 답의 꼴을 맞춘다 |
정답은 20문항을 다 적은 뒤에 연다. 한 문항씩 열어 보면 뒤 문항을 풀 때 앞 문항의 해설이 머리에 남아 진단이 흐려진다.
왜 이걸 하나 — 7/19 에 받은 53점의 재현이다. 재현되지 않으면 그 자체가 정보다.
시작을 누르면 시계가 돌고, 화면을 닫아도 이어진다. 멈춤은 시험장에 없으므로 누르지 않는다. 20문항을 다 적은 뒤 문항마다 정답 보기 → 맞았다 · 틀렸다를 누르면 위 막대에 점수와 묶음별 결과가 모인다.
다음 [평가표]의 등급 기준을 바탕으로, 테스트 케이스의 입력값이 [테스트 내역]의 예상 결과값처럼 출력되는지 비교하는 명세 기반 테스트 기법을 쓰시오.
[평가표]
| 점수 | 성적 |
|---|---|
| 90~100 | A |
| 80~89 | B |
| 70~79 | C |
| 0~69 | D |
[테스트 내역]
| 입력값 | -10 | 30 | 75 | 85 | 95 | 110 |
|---|---|---|---|---|---|---|
| 예상 결과 | 에러 | D | C | B | A | 에러 |
| 실제 결과 | 에러 | D | C | B | A | 에러 |
다음 설명에 해당하는 결합도를 보기에서 골라 기호로 쓰시오.
한 모듈이 다른 모듈의 내부 데이터나 내부 제어 흐름을 직접 참조하거나 수정한다. 예를 들어 다른 모듈의 내부 코드 위치로 분기하거나, 내부에 선언된 자료를 직접 사용하는 경우이다.
ㄱ. 자료 결합도
ㄴ. 스탬프 결합도
ㄷ. 제어 결합도
ㄹ. 외부 결합도
ㅁ. 내용 결합도
다음 프로세스를 선점형 SRT(Shortest Remaining Time) 방식으로 스케줄링할 때 평균 대기시간을 구하시오. 문맥 교환 시간은 무시하며, 시간 단위는 ms이다.
| 프로세스 | 도착 | 서비스 |
|---|---|---|
| P1 | 0 | 8 |
| P2 | 1 | 4 |
| P3 | 2 | 9 |
| P4 | 3 | 5 |
다음 설명에 해당하는 라우팅 프로토콜의 영문 약어를 쓰시오.
자율 시스템 내부에서 사용하는 링크 상태 라우팅 프로토콜이다. 최단 경로 계산에 다익스트라 알고리즘을 사용하고, 영역(Area)을 이용하는 계층 구조를 지원하여 대규모 네트워크에 적합하다.
다음 Python 프로그램의 실행 결과를 쓰시오.
str[:4] 는 0~3 → _THI, str[6:8] 은 6~7 → IS, str[18:] 은 18번째부터 끝까지 → ING. 이어 붙이면 _THIISING. 파이썬 3.12 로 실행해 확인했다. 맨 앞 밑줄을 빠뜨리면 틀린다. 복원 출처는 grandlife.co.kr 2026-2회 복원 풀이(2026-09-14 대조). 공식 원문이 아니라 문장·변수명·수치가 실제와 다를 수 있다.다음 [학생] 테이블을 이용해 이름이 ‘이’로 시작하는 학생들을 이름 기준 내림차순으로 정렬하려고 한다. [쿼리]의 빈칸 ①과 ②에 들어갈 알맞은 내용을 쓰시오.
[학생]
| 학번 | 이름 | 학년 | 학과 |
|---|---|---|---|
| 202101 | 이순신 | 3 | 컴퓨터공학 |
| 202102 | 김영희 | 1 | 전기공학 |
| 202103 | 이상 | 4 | 건축공학 |
| 202104 | 임꺽정 | 2 | 전자공학 |
| 202105 | 이정재 | 3 | 토목공학 |
[쿼리]
% 는 0글자 이상 아무 글자다. 「이로 시작」이면 '이%', 「이로 끝」이면 '%이', 「이가 들어 있다」면 '%이%'. 내림차순은 DESC, 생략하면 ASC(오름차순)다. sqlite 로 돌리면 이정재 · 이순신 · 이상 순으로 3행이 나온다. 작은따옴표까지 적는 것이 안전하다. 복원 출처는 grandlife.co.kr 2026-2회 복원 풀이(2026-09-14 대조). 공식 원문이 아니라 문장·변수명·수치가 실제와 다를 수 있다.다음 C 프로그램의 실행 결과를 쓰시오.
++c == 3 은 전위 증가라 3번째 방문에서 참이 된다. gcc 로 컴파일해 12 를 확인했다. 복원 출처는 grandlife.co.kr 2026-2회 복원 풀이(2026-09-14 대조). 공식 원문이 아니라 문장·변수명·수치가 실제와 다를 수 있다.10.0.0.0/27 네트워크를 동일한 크기의 2개 서브넷으로 분할하였다.
| 구분 | 주소 블록 범위 |
|---|---|
| 첫 번째 서브넷 | 10.0.0.0 ~ 10.0.0.15 |
| 두 번째 서브넷 | 10.0.0.16 ~ 10.0.0.31 |
이때 10.0.0.1이 속한 서브넷의 프리픽스 비트 길이는 ( ) bit이다. 빈칸에 들어갈 값을 쓰시오.
다음 Java 프로그램의 실행 결과를 쓰시오.
super.print() 로 부모 것을 부르므로 10a 가 찍히고, 이어서 20b. print 는 줄바꿈이 없어 한 줄로 붙는다. JDK 17 로 실행해 확인했다. 공백이나 줄바꿈을 넣으면 틀린다. 복원 출처는 grandlife.co.kr 2026-2회 복원 풀이(2026-09-14 대조). 공식 원문이 아니라 문장·변수명·수치가 실제와 다를 수 있다.다음 구성도에서 네트워크 A, B, C에 연결된 두 장비는 각각 같은 네트워크에 속해야 한다. 빈칸 ②, ④, ⑤에 들어갈 수 있는 IP 주소를 각각 하나씩 쓰시오. 답안에는 프리픽스를 제외한 IP 주소만 쓴다.
구성도는 네트워크 A — 라우터 — 네트워크 B — 라우터 — 네트워크 C 로 이어지고, 각 네트워크에 장비가 2대씩 있다.
| 네트워크 | 장비 | 주소 |
|---|---|---|
| A | 1 | 192.168.35.3/24 |
| A | 2 | ( ② ) |
| B | 3 | 129.200.10.72/22 |
| B | 4 | ( ④ ) |
| C | 5 | ( ⑤ ) |
| C | 6 | 192.168.36.16/24 |
다음 테이블과 SQL문을 보고 실행 결과를 쓰시오.
[A]
| id | x |
|---|---|
| 1 | 10 |
| 2 | 20 |
| 3 | 30 |
| 4 | 40 |
[B]
| id | y |
|---|---|
| 1 | 5 |
| 1 | 15 |
| 2 | 20 |
| 3 | 35 |
| 5 | 50 |
10 > NULL 은 참이 아니다. x=20 → id{1} → AVG(5,15)=10, 20>10 참. x=30 → id{1,2} → AVG(5,15,20)=13.3, 참. x=40 → id{1,2,3} → AVG(5,15,20,35)=18.75, 참. 3행. sqlite 로 돌려 3 을 확인했다. NULL 비교가 거짓이 되는 것이 이 문제의 함정이다. 복원 출처는 grandlife.co.kr 2026-2회 복원 풀이(2026-09-14 대조). 공식 원문이 아니라 문장·변수명·수치가 실제와 다를 수 있다.다음 C 프로그램의 실행 결과를 줄 단위로 쓰시오. 단, sizeof(int)=4, sizeof(int*)=8이다.
int arr[] 는 매개변수 자리에서 포인터로 바뀌므로 sizeof 가 8 → 8/4 = 2. function4 의 *arr 는 int 8개짜리 배열 자체라 32/4 = 8. 앞의 1. 2. 3. 4. 는 프로그램이 찍는 글자다. gcc(64비트, sizeof(int*)=8)로 실행해 4줄을 확인했다. 복원 출처는 grandlife.co.kr 2026-2회 복원 풀이(2026-09-14 대조). 공식 원문이 아니라 문장·변수명·수치가 실제와 다를 수 있다.다음 Python 프로그램의 실행 결과를 쓰시오. 딕셔너리는 작성된 순서대로 순회한다고 가정한다.
key[-1] 은 키의 마지막 글자, location[0] 은 값의 첫 글자다. NYC/New York → CN, LON/London → NL, PAR/Paris → RP, TKY/Tokyo → YT. 이어 붙이면 CNNLRPYT. 파이썬 3.12 로 실행해 확인했다. end="" 라 줄바꿈도 없다. 복원 출처는 grandlife.co.kr 2026-2회 복원 풀이(2026-09-14 대조). 공식 원문이 아니라 문장·변수명·수치가 실제와 다를 수 있다.다음 Java 프로그램의 실행 결과를 쓰시오.
num <= 1 이라 0 과 음수도 그 값 그대로 돌려준다. compute(2) = compute(1)+compute(-1) = 1+(-1) = 0, compute(3) = compute(2)+compute(0) = 0, compute(4) = compute(3)+compute(1) = 1, compute(5) = compute(4)+compute(2) = 1. JDK 17 로 실행해 1 을 확인했다. 음수 인자가 0 이 아니라 음수를 돌려주는 것이 함정이다. 복원 출처는 grandlife.co.kr 2026-2회 복원 풀이(2026-09-14 대조). 공식 원문이 아니라 문장·변수명·수치가 실제와 다를 수 있다.다음 설명의 빈칸에 들어갈 용어를 쓰시오.
임의의 길이를 가진 입력 데이터를 고정된 길이의 값으로 변환하며, 데이터 무결성 확인과 메시지 인증 등에 활용되는 일방향 함수는 ( ) 함수이다.
다음 Java 프로그램의 실행 결과를 쓰시오.
+ 는 덧셈이고 9+500 = 509. JDK 17 로 실행해 확인했다. 문자열이 끼면 이어 붙이기가 되지만 여기는 숫자뿐이다. private b 는 B 에서 못 보지만 이 문제에서는 쓰지 않는다. 복원 출처는 grandlife.co.kr 2026-2회 복원 풀이(2026-09-14 대조). 공식 원문이 아니라 문장·변수명·수치가 실제와 다를 수 있다.다음 설명에 해당하는 디자인 패턴을 보기에서 골라 쓰시오.
구체적인 클래스를 명시하지 않고 서로 관련되거나 의존적인 객체들의 집합을 생성하기 위한 인터페이스를 제공한다. ‘Kit’라고도 한다.
ㄱ. Builder
ㄴ. Factory Method
ㄷ. Abstract Factory
ㄹ. Prototype
다음 테이블과 SQL문의 실행 결과를 쓰시오.
[A]
| id | v |
|---|---|
| 1 | 10 |
| 1 | 20 |
| 2 | 30 |
[B]
| id | w |
|---|---|
| 1 | 100 |
| 2 | 200 |
| 3 | 300 |
| 4 | 400 |
WHERE A.id IS NULL 은 그 짝 없는 2행만 고른다. sqlite 3.49 로 돌려 2 를 확인했다. 복원 출처는 grandlife.co.kr 2026-2회 복원 풀이(2026-09-14 대조). 공식 원문이 아니라 문장·변수명·수치가 실제와 다를 수 있다.다음 SQL문의 빈칸 ①에 들어갈 키워드를 쓰시오.
관계형 데이터 모델에서는 데이터 중복으로 인한 이상 현상을 방지하고 데이터의 일관성과 정확성을 유지하기 위해 정규화를 수행한다. 속성명 아래에 밑줄이 그어진 고객아이디와 강좌명은 함께 기본키를 구성한다. 다음 [강좌신청] 릴레이션이 만족하는 가장 높은 정규형을 [보기]에서 고르시오.
[강좌신청]
| 고객아이디 | 강좌명 | 강사번호 |
|---|---|---|
| apple | 영어회화 | P001 |
| banana | 기초토익 | P002 |
| carrot | 영어회화 | P001 |
| carrot | 기초토익 | P004 |
| orange | 영어회화 | P003 |
| orange | 기초토익 | P004 |
[보기]
제1정규형 · 제2정규형 · 제3정규형 · 제4정규형 · 제5정규형 · BCNF
왜 이걸 하나 — 점수는 결과가 아니라 순서를 정하는 재료다. 여기서 남은 날의 순서를 정한다.
세트 막대의 묶음별 결과를 아래 표에 옮긴다. 틀린 문항 수에 5를 곱한 것이 그 묶음에서 샌 점수다. 샌 점수가 큰 묶음의 장부터 본다.
| 문항 | 분야 | 가는 장 | 무엇을 묻나 |
|---|---|---|---|
| 1 | 테스트 | E18 | 동치 분할과 경계값 분석의 구분 |
| 2 | SW공학 | E15 | 결합도 6단계의 이름과 기호 |
| 3 | OS | E16 | SRT 선점 스케줄링 계산 |
| 4 | 네트워크 | E12 | OSPF 와 RIP 의 표지 |
| 5 | Python | E07 | 슬라이싱의 끝 인덱스 |
| 6 | SQL | E08 | LIKE 의 % 자리와 DESC |
| 7 | C | E03 | 구조체 포인터 트리의 후위 순회 |
| 8 | 네트워크 | E12 | 서브넷 분할과 프리픽스 |
| 9 | Java | E05 | super 호출 순서와 문자열 결합 |
| 10 | 네트워크 | E12 | /22 네트워크의 호스트 범위 |
| 11 | SQL | E08 | 상관 서브쿼리와 NULL 비교 |
| 12 | C | E02 | 배열 매개변수의 sizeof |
| 13 | Python | E07 | 딕셔너리 순회와 음수 인덱스 |
| 14 | Java | E06 | 음수까지 내려가는 재귀 |
| 15 | 보안 | E13 | 해시의 정의 |
| 16 | Java | E05 | 오버라이딩된 메서드의 선택 |
| 17 | 디자인패턴 | E17 | 생성 패턴 4개의 구분 |
| 18 | SQL | E08 | RIGHT OUTER JOIN 과 IS NULL |
| 19 | SQL | E09 | CHECK 제약 |
| 20 | DB | E10 | 3NF 와 BCNF 의 경계 |
→ 묶음으로 세면 프로그래밍 7문항(35점) · SQL·DB 5문항(25점) · 네트워크 3문항(15점) · SW공학 4문항(20점) · 보안 1문항(5점)이다. 프로그래밍과 SQL·DB 만 다 맞아도 60점이 된다. 이 회차가 「평이했다」는 총평은 이 배점 때문이다.
| 구분 | 판정 기준 | 가는 곳 |
|---|---|---|
| 몰라서 틀렸다 | 정답을 보고도 왜 그런지 바로 안 잡힌다 | 그 분야 장 03절 밑바닥부터 읽고, 04절 기출을 전부 푼다 |
| 알았는데 틀렸다 | 정답을 보는 순간 「아」 소리가 난다. 철자 · 순서 · 단위 · 줄바꿈 · 기호 대신 이름 | 그 분야 장 05절 틀리는 자리만 읽고, 같은 꼴의 기출을 필터로 골라 다시 푼다 |
| 맞았는데 시간이 오래 걸렸다 | 1회독에서 넘겼다가 2회독에서 맞았다 | 06절 훈련을 매일 5문항. 시험장에서는 이 문항이 먼저 떨어진다 |
샌 점수가 큰 묶음부터 간다. 같은 점수면 배점이 큰 묶음이 먼저다. 프로그래밍은 11회분에서 매 회 7~9문항이라, 여기서 2문항이 샜다면 다른 묶음의 4문항과 같은 무게다.
| 샌 묶음 | 먼저 볼 장 | 이유 |
|---|---|---|
| 프로그래밍 | E02 → E03 → E05 → E06 → E07 → E04 | C 포인터 · 재귀, Java 상속이 매 회 나온다. 훈련 90제가 붙어 있다 |
| SQL·DB | E08 → E10 → E09 | 조회 결과 문제가 가장 많고, 정규화 판정이 그 다음이다 |
| 네트워크 | E12 → E11 | 서브네팅 계산이 회차마다 있다. 절차를 외우면 5점이 확실해진다 |
| SW공학 | E15 → E18 → E17 → E16 | 결합도 · 테스트 기법 · 패턴은 짝으로 외우는 문제다 |
| 보안 | E13 → E14 | 용어 문제라 철자 연습이 곧 점수다 |
기록은 브라우저 저장소에 문항별로 남는다. 채점을 마친 뒤 이 화면을 닫아도 세트 막대의 점수와 묶음별 결과는 다음에 열 때 그대로 있고, 오답노트에서도 회차별 점수와 틀린 문항으로 읽는다.
왜 이걸 하나 — 진단의 결과는 다음 장의 이름이어야 한다.