Algorithm (9) 썸네일형 리스트형 [Baekjoon] 백준 C++ 16235 나무재테크 #사람마다 푼 방법이 다릅니다. 아 이런 코드도 있구나라는 생각만 가져주시면 감사하겠습니다. 제 코드에 있어서 비효율적인 부분이 있으면 댓글로 남겨놔 주시면 참고하여 성장할 수 있도록 하겠습니다!!! 하지만!!! 무분별한 비난은 삼가 주세요! 해당 문제는 처음 생각해보면 어렵게 생각할 수 있습니다. 하지만 전혀 그렇지 않습니다. 저는 구조체를 선언한 후 4개의 queue를 생성해서 문제를 풀었습니다. 1. tree : 나무 전체를 관리할 queue 2. temp_tree : 해당 queue가 필요한 이유는 새로 생성된 tree를 먼저 tree queue에 먼저 넣기 위해서 임시 보관용으로 3. new_tree : 기존에 있던 나무들이 번식한 후 넣어지게 되는 tree입니다. 지금 생각해보니 굳이 해당 q.. [Baekjoon] 백준 C++ 14499 주사위 굴리기 #사람마다 푼 방법이 다릅니다. 아 이런 코드도 있구나라는 생각만 가져주시면 감사하겠습니다. 제 코드에 있어서 비효율적인 부분이 있으면 댓글로 남겨놔 주시면 참고하여 성장할 수 있도록 하겠습니다!!! 하지만!!! 무분별한 비난은 삼가 주세요! 오늘은 주사위 굴리기 문제를 풀어봤습니다. 핵심 부분을 정리해봤습니다. 1. 배열로 주사위를 구현했으며, 3번 인덱스가 출력해야하는 부분이며, 1번인덱스가 지도와 닿는 부분입니다. 2. 모든 주사위 면은 0으로 시작하며, 이동한 지점의 지도가 0이면 주사위의 어떤 수든 지도로 복사되고, 지도가 0이 아니면 지도의 어떤 수든 주사위로 복사 후 지도는 0이 됩니다. 3. 주사위가 바깥으로 나가려고 하면 출력도 금지하고 아무 행동도 하면 안됩니다. 4. 주사위를 이동시키.. [Baekjoon] 백준 C++ 15686 치킨배달 #사람마다 푼 방법이 다릅니다. 아 이런 코드도 있구나라는 생각만 가져주시면 감사하겠습니다. 제 코드에 있어서 비효율적인 부분이 있으면 댓글로 남겨놔 주시면 참고하여 성장할 수 있도록 하겠습니다!!! 하지만!!! 무분별한 비난은 삼가 주세요! 해당 문제는 처음에 집을 바탕으로 bfs를 할까 치킨을 바탕으로 bfs를 할까 고민이 많았습니다. 결론은 치킨집들을 바탕으로 bfs를 진행했으며, dfs를 통해서 M만큼 치킨집을 선택후에 선택된 치킨집들에 한해서 bfs를 진행 후 계산을 했습니다. 함수명 또는 변수명 선택하는게 제일 어렵네요,,,ㅎㅎ #include #include #include #define SIZE 50 using namespace std; vector house; vector chicken;.. [Baekjoon] C++ 12100 EASY #사람마다 푼 방법이 다릅니다. 아 이런 코드도 있구나라는 생각만 가져주시면 감사하겠습니다. 제 코드에 있어서 비효율적인 부분이 있으면 댓글로 남겨놔 주시면 참고하여 성장할 수 있도록 하겠습니다!!! 하지만!!! 무분별한 비난은 삼가 주세요! 해당 문제는 단순 시뮬레이션 + 구현문제입니다. 저는 백준 페이지에서 참고로 할 수 있는 게임을 통해서 문제를 풀어봤습니다. 그리고 블럭을 옮기는 부분을 3가지 단계로 구현했습니다. 먼저 해당 방향으로 옮기기, 블럭 합치기, 빈칸이 생겼으니 다시 블럭 옮기기로 나눴습니다. #include #define SIZE 20 using namespace std; int N; int map[SIZE][SIZE]; int copyMap[SIZE][SIZE]; int dir[5].. [Baekjoon] C++ 15685 드래곤커브 #사람마다 푼 방법이 다릅니다. 아 이런 코드도 있구나라는 생각만 가져주시면 감사하겠습니다. 제 코드에 있어서 비효율적인 부분이 있으면 댓글로 남겨놔 주시면 참고하여 성장할 수 있도록 하겠습니다!!! 하지만!!! 무분별한 비난은 삼가 주세요! 해당 문제는 처음 생각해보면 어렵지만, 규칙을 알면 쉽게 풀 수 있습니다. 세대를 지날수록 vector에 제일 마지막으로 추가된 방향부터 제일 처음의 방향까지 +1 한 값을 vector에 추가해줍니다. 중요한 점은, vector의 size를 미리 변수에 넣어줌으로써 예외처리를 막을 수 있습니다. 만약 추가해야 할 방향이 4면 범위를 벗어나기 때문에 0으로 만들어줌으로써 해결할 수 있습니다. #include #include #define SIZE 101 using n.. [Programmers] C++ LV2_피보나치수 #사람마다 푼 방법이 다릅니다. 아 이런 코드도 있구나라는 생각만 가져주시면 감사하겠습니다. 제 코드에 있어서 비효율적인 부분이 있으면 댓글로 남겨놔주시면 참고하여 성장할 수 있도록 하겠습니다!!! 하지만!!! 무분별한 비난은 삼가해주세여! 해당 문제는 배열로 풀면 쉽게 풀리는 문제이며, 100000이라는 숫자가 제한이었습니다. 그래서 이러한 점을 봤을 때 문제에서 나온 1234567을 매번 나눠주고 나머지를 넣어주면 쉽게 풀리는 문제입니다. #include #include #include #define SIZE 100000 using namespace std; long long arr[SIZE]; void init() { for (int a = 0; a < SIZE; a++) { arr[a] = 0; .. [Programmers] C++ LV2_땅따먹기 #사람마다 푼 방법이 다릅니다. 아 이런 코드도 있구나라는 생각만 가져주시면 감사하겠습니다. 제 코드에 있어서 비효율적인 부분이 있으면 댓글로 남겨놔주시면 참고하여 성장할 수 있도록 하겠습니다!!! 하지만!!! 무분별한 비난은 삼가해주세여! 해당 문제는 처음에는 dfs 풀려고 하다보니까 시간초과가 나더라구요...!!!!! 그래서 생각해보니까 DP로 풀 수 있다고 생각했습니다. 0번 행이 아닌 1번행부터 진행하면서 자기 자신과 전 행의 자기 열을 제외한 다른 열들을 더해서 비교했을 때 최댓값을 자기 자신의 값으로 만드는 방법입니다. #include #include using namespace std; int solution(vector temp) { int answer = -1; vector land = .. [Programmers] C++ LV2_카카오프렌즈컬러링북 #사람마다 푼 방법이 다릅니다. 아 이런 코드도 있구나라는 생각만 가져주시면 감사하겠습니다. 제 코드에 있어서 비효율적인 부분이 있으면 댓글로 남겨놔주시면 참고하여 성장할 수 있도록 하겠습니다!!! 하지만!!! 무분별한 비난은 삼가해주세여! 해당 문제는 나름 쉽게 풀 수 있었습니다. dfs 방식으로 풀었으며, 각각의 조건에 대해서 가지치기만 잘 해주신다면 문제없이 풀 수 있을 거라고 생각합니다. 프로그래머스를 통해서 IDE에서 연습하는 것이 아닌 직접 프로그래머스에서 문제를 풀다 보니까 디버그 하기가 어렵지만 하다보니까 적응이 되네여!!! 모두들 열심히 합시다. #include #include #define SIZE 100 using namespace std; int dx[] ={-1,0,1,0}; in.. 이전 1 2 다음