본문 바로가기
Writing

[싸피일기] SW 역량테스트 A형 대비 스터디 회고 (A+ 취득)

by 벨롭 (valop) 2024. 3. 14.

 

싸피 1학기를 수료하기 위해서는 모의 SW 역량테스트에서 일정 이상의 등급을 취득해야하는데, 비전공자의 경우 IM, 전공자의 경우 A 취득이 필수로 요구된다. IM이 기본적인 자바 문법을 활용해 구현하는 문제라면, A형은 알고리즘에 대한 학습이 요구된다.

 

비전공자이기때문에 최소 요구사항은 IM이지만 A형 이상을 취득할 경우 SW 역량테스트 B형에 응시할 수 있기 때문에 A형 취득을 목표로 스터디를 꾸렸다. SSAFY에서 응시하는 IM과 A형은 모의 시험이지만, B형은 무려 실제 역량테스트로 치뤄진다. 즉 삼성 계열사 입사 시 우대가 적용된다!!!

 

 

스터디를 제외한 개인적인 알고리즘 공부 내용이나 방법은 아래 포스팅에 담아두었다.

2024.02.18 - [Writing] - [싸피일기] 백준 골드5 달성

 

[싸피일기] 백준 골드5 달성

싸피 입과하면서 만든 백준 아이디가 드디어 골드를 달성했다. 알고리즘 수업을 들으면서, 알고리즘 문제해결 역량이 정체한 것 같다는 느낌을 받았다. 분명 열심히 공부를 하고 있는건 같은데,

kyeong8139.tistory.com

 

 

 

 

 

스터디 진행 방식

 

학습 범위 : 완전탐색 / 그리디 / 분할정복 / 백트래킹 / dfs / bfs / dp

진행 방식
1. 매일 1문제씩 선정해서 문제 풀이를 진행함. (마감 : 23:59)
2. 깃허브 활용해서 Pull Request로 코드 리뷰 진행함.

 

 

스터디 초반부에는 알고리즘 유형별로 문제 풀이를 하면서 특정 알고리즘을 연습하는 것에 중점을 두었다.

 

후반부에는 백준에 SW역량테스트 기출 문제집을 보면서 알고리즘을 모르는 상태에서 문제를 풀며 어떤 알고리즘을 적용할지 설계하는 부분에 익숙해지고자 했다.

 

 

https://github.com/kyeong8139/2024_Algorithm_Study

 

GitHub - kyeong8139/2024_Algorithm_Study: SW 역량테스트 A형 취득을 위한 스터디입니다.

SW 역량테스트 A형 취득을 위한 스터디입니다. Contribute to kyeong8139/2024_Algorithm_Study development by creating an account on GitHub.

github.com

 

 

 

 

 

스터디 선정 문제

 

 

날짜 유형 문제 링크   날짜 문제 링크
240201 완전탐색 퇴사   240217 시험 감독
240202 완전탐색 컴백 홈   240218 스타트와 링크
240203 그리디 주식   240219 파이프 옮기기 1
240204 그리디 행렬   240220 톱니바퀴
240205 분할 정복 쿼드 트리   240221 로봇 청소기
240206 분할 정복 하노이 탑   240222 상어 초등학교
240209 백 트래킹 N과 M(1)   240223 컨베이어 벨트 위의 로봇
240210 백 트래킹 연산자 끼워넣기   240224 마법사 상어와 비바라기
240211 dfs & bfs dfs와 bfs   240225 배열 돌리기 4
240212 dfs & bfs 경로 찾기   240226 게리멘더링
240213 dfs & bfs 안전 영역   240227
240214 dfs & bfs 숨바꼭질   240228
240215 DP 계단 오르기   240229 주사위 굴리기
240216 DP 연속 합                

 

 

설 연휴 이틀을 제외하고는 하루 한 문제씩 푸는 것을 목표로 했다. 유형별 문제를 선정할 때 첫 날에는 쉬운 문제, 둘째날에는 어려운 문제를 풀고자 했는데 티어와 난이도가 잘 들어 맞지 않는 경우가 많아서 첫날부터 고생이었다 ^^;;;

 

 

 

 

 

코드 리뷰

 

 

 

각자 브랜치를 파서 풀리퀘스트를 올리면, 해당 풀리퀘스트에 댓글을 다는 방식으로 코드리뷰를 진행했다.

 

 

 

 

 

 

 

 

회고

 

 

PLUS

 

공부를 하기 싫은 날에도 꼭 하루에 한 문제는 풀고 쉬었기 때문에, A형 시험이 가까워지면서 알고리즘과 권태기가 왔는데도 알고리즘 감을 잃지 않을 수 있었다.

 

그리고 다른 사람들의 코드를 보면서 접근 방식에 대한 시야가 넓어진 기분이다. 평소에는 익숙한 풀이 위주로 접근을 하곤 했는데, 코드리뷰를 하면서 괜찮았던 풀이가 있으면 다른 문제를 풀면서 접목해보기도 했다. 바이너리 카운팅은 잘 쓰지 않던 알고리즘이었는데 리뷰를 하면서 아이디어를 얻어갔다. 

 

 

A형을 칠 때도, 스터디원이 이런 문제는 이렇게 접근하는게 낫던데? 라고 했던 말이 생각나서 설계를 빠르게 끝낼 수 있었다. 특히 비전공자의 첫 SW역량테스트는 A형을 치기 전에 IM에도 응시해야하기때문에 시간이 부족할 수 있는데, 설계를 빨리 끝낸 덕분에 3시간 내에 2문제를 모두 풀 수 있었다. 

 

마지막으로 git 사용법을 자연스레 익힐 수 있었다. 처음에는 Main 브랜치만을 이용해서 코드를 업로드하다가, commit 메세지가 제대로 관리되지 않고 타인의 코드를 건드리기도 해서 개별적인 브랜치를 파서 운영했다. 또한 풀리퀘스트를 사용해보는 것도 처음이었다. 소스트리는 사용하지 않고 git bash를 이용해서 관리한 것도 좋은 경험이었다.

 

 

 

 

MINUS

 

 

풀리퀘스트로 코드 리뷰를 진행했는데, 스터디원이 많다 보니 한 두명이 리뷰를 하지 않아도 그냥 넘어가는 경우가 있었다. 그러다보니 점점 코드리뷰에 소홀해지는 분위기가 형성되어 후반부에는 리뷰가 제대로 진행되지 않았다. 그래서 지금 멤버 그대로 solved ac 클래스문제 풀이 스터디를 진행하고 있는데, 이 부분을 개선하기 위해 따로 코드리뷰하는 날을 잡고 오프라인으로 모여서 자신의 코드를 발표하고 리뷰하고 있다.

 

또한 A형 대비 문제로 백준의 SW역량테스트 기출문제를 풀었는데, SWEA에도 모의 역량테스트 문제가 많고 실제 유형도 비슷하기 때문에 다른 사람들이 A형 대비 알고리즘 스터디를 진행한다면 SWEA의 문제를 위주로 푸는 것을 권장하고 싶다.

 

 

 

 

SW 역량테스트 후기

 

 

비전공자의 경우 첫 SW 역량테스트를 치고 나서 그래프 탐색 알고리즘 등을 배우기 때문에, 비전공자반 수업 진도와는 별개로 A형 대비 스터디를 꾸려서 운영했다. 그리고 싸피에서도 전공 자바반 강의 다시보기와 A형 보충을 비전공자에게도 열어주었기 때문에 이 부분도 적극 활용했다.

 

취업 시 코딩테스트를 치는 기업이 많은 것을 생각하면, A형을 목표로 하고 알고리즘을 공부하는 것도 좋은 전략이라고 생각한다. 실제 코딩테스트를 치기 위해서도 그정도의 알고리즘 학습은 필요할뿐더러, 단기적이고 눈에 보이는 목표가 있으면 아무래도 학습 의욕도 높아지게 된다. 그리고 SSAFY 교육생이 아니라면 응시 기회도 얻기 어려운 SW 역량테스트 B형 응시 자격을 얻을 수 있으므로 두마리 토끼를 잡을 수 있는 기회 ^^