문제 출처
15683번: 감시
스타트링크의 사무실은 1×1크기의 정사각형으로 나누어져 있는 N×M 크기의 직사각형으로 나타낼 수 있다. 사무실에는 총 K개의 CCTV가 설치되어져 있는데, CCTV는 5가지 종류가 있다. 각 CCTV가 감
www.acmicpc.net
1. 풀이 접근
ㆍ CCTV는 최대 8개 까지 설치 할 수 있음. 가로 또는 세로 방향으로 회전 가능
- 최대 경우의 수가 4^8 나옴.
ㆍ 경우의 수에 따라 카메라 특성에 맞게 탐색 가능한지 확인
- 벽을 만나거나, 경계 밖으로 나가면 취소
※ 나는 완전 하드코딩해서 모든 경우의 수 카메라 종류 5대, 방향 4개에 맞추어 구분해서 탐색 진행하게 코드 짬. 무식하게 짬.
ㆍ 탐색 다 되면 갯수 세서 최댓값 저장.
ㆍ 마지막에 전체 크기 ( N * M ) - 커버된 갯수 - 벽 으로 감시 공간 체크
- N * M , 벽은 크기가 고정이라 커버된 갯수가 많으면 많을 수록 사각지대가 없는 것)
2. 소스코드
github.com/Choi-JinYeong/Solve_Alg/tree/master/Solve_Algs/src/Git_BJ_15683
Choi-JinYeong/Solve_Alg
알고리즘 풀이. Contribute to Choi-JinYeong/Solve_Alg development by creating an account on GitHub.
github.com
3. 맺음말
ㆍ 체감난이도 : 약간 쉬움
ㆍ 접근 방법도 어렵지 않은데, 바라보는 방향과 회전가능한 방향을 경우의 수로 구해보려고 하다가 시간 소모 많이됨. 실제 시험시간이다 가정하고 1시간 반 넘기지 않으려해서 완전 모든 경우의 수로 하드코딩을 진행함. 더 이쁘게 구현할 수 있었을 것 같은데 나중에 기회되면 도전해 볼 예정
ㆍ 더욱 좋은 풀이방법이나 보완할 수 있는 부분, 또는 문제가 될 수 있는 부분들은 알려주시면 감사하겠습니다.
'IT > 알고리즘 풀이' 카테고리의 다른 글
[백준] [자바] 15686번 : 치킨 배달 (0) | 2021.03.23 |
---|---|
[백준] [자바] 14888번 : 연산자 끼워넣기 (0) | 2021.03.21 |
[백준] [자바] 14501번 : 퇴사 (0) | 2021.03.19 |
[백준] [자바] 14499번 : 주사위 굴리기 (0) | 2021.03.19 |
[백준] [자바] 14889번 : 스타트와 링크 (0) | 2021.03.18 |
댓글