본문 바로가기
반응형

[백준]214

[BaekJoon/백준] 5566번 주사위 게임 시뮬레이션 하는 문제다. SW 역량 문제집에 있길래 풀었는데, 이전까지 문제들과는 다르게 난이도가 상대적으로 낮은 것 같아서 문제를 한번 더 다시 읽고, 풀면서도 '이 문제에 함정이 숨어있나?' 생각하면서 의아했었다. 반전은 없었다고 한다!! #include #include using namespace std; int N, M, POS; int MAP[1000]; vector list; int main() { int K, C; cin >> N >> M; for(int i = 0; i > MAP[i]; for(C = 0; C > K; POS += K + MAP[POS + K]; if(POS >= N - 1) break; } cout 2022. 6. 30.
[BaekJoon/백준] 7562번 나이트의 이동 BFS 유형의 문제이다. 2차원 배열로 시작해서 풀었는데 1차원 + 숫자 연산만으로 좀 더 간단하게 풀 수 도 있다. (ex. 1697번 : https://hevton.tistory.com/422 ) // 생각해보니, 굳이 2차원 배열을 다루지 않고 그냥 숫자로만 해도 구현할 수 있을 것 같다. #include #include #include using namespace std; int T, N; bool VISIT[300][300]; int DEPTH[300][300]; int mx[8] = {-1, -2, -2, -1, 1, 2, 2, 1}; int my[8] = {-2, -1, 1, 2, -2, -1, 1, 2}; int START_X, START_Y, FIN_X, FIN_Y; // x y 좌표 두.. 2022. 6. 29.
[BaekJoon/백준] 14620번 꽃길 토글 형식의 DFS를 사용하는 문제이다. 전체 N * N 배열에서, 3개의 꽃을 심을 모든 경우의 수를 탐색하기 때문. 시간초과가 한참 떠서,, 맞왜틀과의 시간을 가졌는데 3개를 뽑고 난 이후 BASE CASE에서 return을 안 쳐주는 실수를 했기 때문이었다 ㅜ.ㅜ #include using namespace std; int COST[10][10]; bool visit[10][10]; // 꽃의 영역 체크. visit[i][j] = true / dfs() / visit[i][j] = false 로직을 사용할 것임. // 제자리, 상하좌우 int mx[5] = {0, 1, -1, 0, 0}; int my[5] = {0, 0, 0, 1, -1}; int N; // 화단 한 변의 길이 int MIN_COS.. 2022. 6. 29.
[BaekJoon/백준] 14501번 퇴사 DP로 풀어야 하나, BFS로 풀어야 하나 고민이 많았다. 그나마 둘 중에 자신있는 DP로 풀었는데 그래도 깔끔하게 풀었던 건 아닌 것 같다.. DP[i] = i번째까지 선택을 고려했을 때, 최대 이익. i 번째에 하는 일은, i 번째를 선택할 수 있는지를 고려하고 i 보다 작은 날짜 중에서, i번째를 고려할 수 있는 누적값이 있는지 본다 약간 냅색유형스럽게 풀었다. #include #include #define MAX(a, b) (a>=b)?a:b // DP냐, BFS냐 => DP를 선택했다. using namespace std; int N; vector v; int DP[16]; // v에 대한 DP를 다룰 배열 //DP[i] => i일 까지 선택할 수 있는 최대 int MAX; // MAX 값 in.. 2022. 6. 28.
반응형