총평
📍문제 조건 정리하는게 중요
📍조건 놓쳐서 틀린게 많음
1번 - 시뮬레이션 문제
틀린 이유
- 이중 for 문을 돌려서 시간에서 짤림 ( 보통 문제에서는 10의 9승 안에 들어가야함)
- 문제를 꼼꼼하게 읽고 순서대로 푸는 게 중요함
이중 for문 안돌리고 어떻게 하지??
-> for문을 돌리면서 한번 돌 때마다 i씩 증가하니까 그걸 일일이 기록하지 말고 그냥 ans에 더할 때 같이 더해주기
-> 한번 자른 곳을 또 자를 수도 있음 이러면 i를 더해주면 안되니까 마이너스 범위가 되도록 해야함
-> trees[k] -= (trees[k] + i) 이런 식으로 현재 trees에 남아있는 것에서 현재까지 인덱스 빼줘야됨 !
2번 - 완전 탐색
시뮬레이션 할 필요 없는 완전 탐색
틀린 이유
- 판다가 살고 있지 않은 칸에서만 구해야 되는데 이 조건 고려 안함
- 최솟값의 범위 설정할 때 20000 * (100 * 100 - 1000) 까지 나올 수 있어서 충분히 큰 수로 했어야 되는데 너무 작은 값으로 함.
3번 - 격자에서의 그래프 탐색 (!= 노드에서의 그래프 탐색)
못 푼 이유
-> bfs 구현을 못함
그래프 탐색 어려워지는 경우
- dfs, bfs 비트는 경우
강사님 정리
n * n 크기의 도시에서 구름이는 상하좌우 주변의 칸 중 하나로 이동할 수 있고,
이동 가능한 지역 (0), 불가능한 지역 (X)
도시의 모든 도로는 이동할 때 거리만큼 비용이 든다.
요즘 트렌드
- 요즘 시뮬레이션 문제가 많이 나옴 (복잡한 구현 문제)
- 실질적인 구현, 프로그래밍 능력 평가하는 문제
코딩테스트 공략법
코딩테스트 왜 볼까?
- 코테로 1차 필터링
- 수시채용 문제는 훨씬 고난이도
어떻게 준비?
기초 구현 능력 : 되게 단순한 기초 능력
- 자바 같은 경우 int, long 뭘 써야 할지
- 전체 큰 그림(시간 복잡도, 메모리 측면)을 보는 능력
- 내가 선택한 언어에 깊은 이해 (코딩테스트와 개발을 위한 언어가 다름)
기초 알고리즘 능력
- 정렬, 그래프 탐색(dfs, bfs), 트리 등등
- 눈 감고도 구현할 수 있도록
요구 사항 파악하기 - 완전 그랬음 ...
- 추측 금지
- 문제를 읽고 요구 사항만 정리하는 연습 -> 문제 여러번 읽지 않아야함
공부 방법
- 잘하는 사람 중심으로 모이는 스터디
- 코테 보는 경험 중요 - 플랫폼 별로 복기
- 모든 회사들이 문제 은행을 만들고 있음
- 모의고사 많이 풀기
QnA
산업별
- 금융권 : 특정 기초 알고리즘을 중시함 (dp, 그래프 문제 완벽 구현) + pt도 같이함
- 게임 산업 : 구현 문제 중심 -> 격자 문제, 가장 효율적인 정렬
언어 제한
- 빅테크 : 제한 없음
- 게임 산업 : c++ 선호
- 하드웨어, 임베디드 분야 : c++, java
기본 학습
- 정렬
- 탐색
- 그래프
- DP
- 우선순위 큐 (구현 시 우선순위)
- 문자열 알고리즘 (고난이도)
- 투포인터 완전 탐색
문제 읽고 에디터에 정리하는 연습
몇 분 동안 고민하느냐 - 2시간 정도 max
- 알고리즘 모르거나
- 실수를 찾거나
히든케이스 잡는 법
- 소수 2, 3, 7, 11 ??? 까지 확인 엣지 케이스????? 를 만들어서 확인?
'CS > 알고리즘' 카테고리의 다른 글
[카테부] 코테스터디 1주차 - 배열 합치기 (백준 11728) (0) | 2024.08.09 |
---|---|
[카테부] 코테스터디 2주차 - 부분합 (백준 1806) (0) | 2024.08.07 |
[알고리즘] 백트래킹 재귀함수안의 값 재귀함수 밖으로 가지고 나오기 (0) | 2024.05.21 |
[자료구조] HashMap (1) | 2024.04.15 |
[알고리즘] 그리디 알고리즘이란? (0) | 2024.03.27 |