문제 - (https://www.acmicpc.net/problem/13458) 솔직히 쉬운 문제였다. 시험장별로 총 감독관은 무조건 1명이므로 A[i]에 총 감독관이 감시할 수 있는 응시자 수(b)를 뺀다. - bSub이라고 하겠다. 따라서, bSub = A[i] - b; 그렇다면, bSub만큼의 응시자를 부감독관이 맡으면 된다. 부감독관은 여러명일 수 있으므로 (0명도 가능) 부감독관이 감시할 수 있는 응시자 수(c)를 bSub에 나눠줌으로써 부감독관이 감시할 수 있는 인원을 구한다. 하지만 여기서 주의할 것은 나눠준 나머지 응시자 수 또한 부감독관이 감시해야 한다는 것이다. 물론, 나머지 응시자가 없다면 신경쓰지 않아도 된다. 따라서, answer += bSub / c; if( bSub % c !=..
문제 - (https://www.acmicpc.net/problem/15685) 3시간이나 걸렸다ㅠ 다른 사람들은 "방향"에 초점을 맞춰서 "배열"로 문제를 풀어나갔지만 나는 "좌표"로 풀었다.. 결과는... 시간도 너무 오래걸렸고 문제 자체도 배열로 풀어나가길 바란듯 하다. 왜냐면, 이 조건 때문이다. 0: x좌표가 증가하는 방향 (→) 1: y좌표가 감소하는 방향 (↑) 2: x좌표가 감소하는 방향 (←) 3: y좌표가 증가하는 방향 (↓) 조건에 따르면 y좌표가 감소하는 방향이 ↑인데, 좌표평면은 위로 갈수록 y값이 커진다. 하지만 배열을 이용해서 풀면, 배열은 위로 갈수록 y값(인덱스)이 작아진다. 이런 이유로 문제 출제자도 배열로 풀길 바란 것 같다. 출제의도 완벽히 무시하고 더 어려운 길을 택..
문제 - (https://www.acmicpc.net/problem/14503) 문제에서 주어진 로봇 청소기의 작동 방법대로 구현하면 되는 문제였다. 시뮬레이션 문제들은 문제를 먼저 이해하는 것이 중요한데, 나는 문제 하는데 시간이 좀 걸렸다ㅠㅠ - 로봇 청소기 작동 순서 - 현재 위치를 청소한다. 현재 위치에서 현재 방향을 기준으로 왼쪽방향부터 차례대로 탐색을 진행한다. 왼쪽 방향에 아직 청소하지 않은 공간이 존재한다면, 그 방향으로 회전한 다음 한 칸을 전진하고 1번부터 진행한다. 왼쪽 방향에 청소할 공간이 없다면, 그 방향으로 회전하고 2번으로 돌아간다. 네 방향 모두 청소가 이미 되어있거나 벽인 경우에는, 바라보는 방향을 유지한 채로 한 칸 후진을 하고 2번으로 돌아간다. 네 방향 모두 청소가 이..
문제 - (https://www.acmicpc.net/problem/14502) 완전탐색으로 풀 수 있는 문제였다. 세가지 스텝으로 문제를 해결할 수 있다. 1. 3개의 벽을 세울 수 있는 모든 경우를 구한다. 2. 그 상태에서 바이러스를 퍼뜨리는 시뮬레이션 진행. 3. 진행된 결과를 보고 안전 영역의 갯수를 구한다. 번호 순서대로 내 코드의 dfs, spreadVirus, dfs의 기저부분 함수를 확인하면 된다. 📌주의할 점 벽을 세우는 부분에서 재귀를 이용할 때, 반복문 순회에 주의하자 시뮬레이션을 진행할 때, deepCopy를 이용하여 새로운 배열을 만들어 진행해도 괜찮지만 굳이 그럴 필요 없이 전역으로 tempMap배열을 만들어놔서 벽이 세워진 상태의 map을 copy하는 방법을 사용하면 공간복잡..
- Total
- Today
- Yesterday
- 자바
- 아기상어
- 그리디
- 톱니바퀴
- 큰 수 만들기
- 시뮬레이션
- 배열순회
- dfs
- 사다리 조작
- 완전탐색
- 코테
- 구현
- 코딩테스트 연습
- 드래곤 커브
- 구명보트
- Greedy
- 재귀
- 인구이동
- Access-Control-Allow-Origin
- BOJ
- 우선순위큐
- header
- 16234
- withCredentials
- java
- 백준
- 14891
- 브라우저 요청
- 프로그래머스
- 코딩테스트
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |