문제 - (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하는 방법을 사용하면 공간복잡..
문제 - (https://www.acmicpc.net/problem/14891) 시뮬레이션 문제... 솔직히 시간 좀 많이 잡아먹는다 실버 1 수준의 문제인데도 푸는데 1시간 정도 걸렸다 구현 문제는 특히 헷갈리는 부분 때문에 실수가 잦아 조심해야 한다 우선 꼭 짚고 넘어가야 할 것들만 언급하고 주의할 점과 내가 실수한 것을 쓰고 마치겠다 👀짚고 넘어가야 할 부분1 - 톱니바퀴 회전시키기 static String clockRotate(String state, int dir) { if (dir == 1) { // 시계 방향 return state.charAt(state.length() - 1) + state.substring(0, state.length() - 1); } else { // 반시계 방향 re..
문제 - (https://www.acmicpc.net/problem/14888) N개의 수로 이루어진 수열과 N-1개의 연산자로 만들 수 있는 모든 식을 구한다. 구한 수들 중 최대가 되는 값과 최소가 되는 값을 구하고 출력한다. 완전탐색, 백트래킹 문제였다 위 두개 개념만 알면 어렵지 않게 풀 수 있는 문제였기 때문에 간단하게 메모만 해놓고 끝내겠다! 문제를 보자마자 나는 재귀를 사용해서 풀어야 겠다고 생각했다. void cal(int res, int numIdx) 에서 res는 현재까지 계산된 수이고 numIdx는 res와 계산할 수의 인덱스이다. 내 풀이를 보면 전역변수로 static int[] op; static int[] targetOp; 를 볼 수 있다. op는 문제에서 제시하는 연산자의 갯수..
- Total
- Today
- Yesterday
- 톱니바퀴
- 구명보트
- 자바
- BOJ
- dfs
- 그리디
- 우선순위큐
- 구현
- withCredentials
- 사다리 조작
- 드래곤 커브
- 16234
- 인구이동
- 14891
- Greedy
- Access-Control-Allow-Origin
- 배열순회
- 시뮬레이션
- 코테
- 재귀
- 아기상어
- 완전탐색
- header
- 프로그래머스
- 코딩테스트 연습
- java
- 브라우저 요청
- 코딩테스트
- 큰 수 만들기
- 백준
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |