PS/BOJ764 [자바] 백준 27315 - 틀리는 건 싫으니까 쉬운 문제에 올인하려고 합니다 (java) 문제 : boj27315 필요 알고리즘 개념 그리디, 정렬 보통 그리디가 붙으면 나머지 태그들은 그리디 규칙을 적용시키기 위해 사용된다. 이번에도 마찬가지다! 매번 최선의 문제를 선택해나가면 문제를 풀 수 있고, 최선의 문제를 선택하기 위해 정렬이 필요하다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 우선 T와 E가 주어지지 않는다고 가정하고 생각해보자. 이 경우 간단한데, 매번 HD 이하의 D값을 가진 문제들 중에 P가.. 2023. 2. 17. [자바] 백준 18310 - 안테나 (java) 문제 : boj18310 필요 알고리즘 개념 그리디, 정렬 그리디로 풀 수 있는 문제이다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 처음엔 단순히 평균 구해서 평균과 가장 가까운 집을 선택하면 될 것이라 생각했다. 예제 입력 1도 그렇게 해보니 맞길래 그렇게 하니 당연히 틀렸다. 아래와 같은 경우, 평균으로 구하면 6.8 이므로 가장 가까운건 '6'이다. 그래서 '6'을 골라보면 차이의 합은 14이다. 하지만 실제론 9.. 2023. 2. 16. [자바] 백준 18248 - 제야의 종 (java) 문제 : boj18248 필요 알고리즘 개념 정렬, 그리디 그리디라고 봐야할진 잘 모르겠다. 아무튼 규칙을 찾아 정렬해서 해결할 수 있다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 문제를 이해하기 상당히 어려운 문제였던 것 같다. 결국 중요한건 N명의 사람이 종에서 특정 거리만큼 떨어져 있고, 그 위치가 바뀌지 않는다('타종이 진행되는 동안 사람들은 종소리에 집중하기 위해 움직이지 않는다')는 점이다. 그렇다면 이 문제.. 2023. 2. 15. [자바] 백준 14940 - 쉬운 최단거리 (java) 문제 : boj14940 필요 알고리즘 개념 그래프, 너비 우선 탐색 (BFS) 그래프에 대한 약간의 규칙을 이해할 수 있어야 한다. 그것만 이해하면 그냥 BFS 한방에 해결 가능하다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 모든 지점에서 목표지점까지의 최단 거리는 사실, 목표지점에서 모든 지점으로의 최단 거리와 같다. 사실 간선이 양방향이니 당연한 부분이다. 이것만 알면 그냥 목표지점부터 BFS를 한방 돌려서 모든 .. 2023. 2. 14. [자바] 백준 1448 - 삼각형 만들기 (java) 문제 : boj1448 필요 알고리즘 개념 그리디, 정렬 그리디로 접근해서 풀 수 있다. 수학 삼각형의 세 변을 이루는 규칙을 알아야 풀 수 있다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 삼각형의 세 변을 이루는 규칙만 알면 풀 수 있다. 간단한데, 가장 긴 변이 있을 때 나머지 두 변의 합이 가장 긴 변의 길이보다 커야 한다. 아래 이미지를 보면 이해 가능할 것 같다. 그리고 이 문제에서 원하는건 '삼각형을 만들 수.. 2023. 2. 12. [자바] 백준 14395 - 4연산 (java) 문제 : boj14395 필요 알고리즘 개념 너비 우선 탐색 (bfs) BFS로 풀 수 있다! ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 BFS를 모른다면 'BFS 알고리즘 (너비 우선 탐색)' 글을 참고해보자. 우선 걸러낼 수 있는걸 먼저 생각해보자. 1. s = s - s; 연산의 경우 무조건 0이 되며, 이후 *, +, / 뭘 해도 0 이외로 벗어날 수 없다. 근데 t는 1 이상으로 입력이 주어진다. 따라서 그냥 버.. 2023. 2. 7. [자바] 백준 11967 - 불켜기 (java) 문제 : boj11967 필요 알고리즘 개념 BFS, DFS 등의 그래프 탐색 알고리즘 그래프 탐색을 통해 풀 수 있다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 우선 BFS를 모른다면 'BFS 알고리즘 (너비 우선 탐색)' 글을 참고하자. 로직을 정확히 세워서 그래프 탐색을 진행하면 풀 수 있다. 글로 설명하면 아래와 같다. 우선 각 방의 상태를 다음과 같이 설정하였다. - 미방문 : 0 - 불 켜져있음 : 1 - 이.. 2023. 2. 5. [자바] 백준 23746 - 문자열 압축 해제 (java) 문제 : boj23746 필요 알고리즘 개념 문자열, 구현 문자열을 다루는 방법을 알아야한다. 로직 자체는 문제에 제시된 그대로 구현만 할 수 있으면 풀 수 있다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 1. N개의 문자열을 입력받아 저장해둔다. 2. 압축된 문자열을 입력받는다. 3. '1'에서 입력받아둔 문자열을 순회하면서 ('1'에서 입력받을 때 미리 해둬도 된다) ___3.1 'to from' 으로 나눈다. 예를.. 2023. 2. 3. [자바] 백준 9205 - 맥주 마시면서 걸어가기 (java) 문제 : boj9205 필요 알고리즘 개념 너비 우선 탐색 (bfs), 깊이 우선 탐색(dfs), 분리 집합(disjoint set) 중 하나 데이터를 원하는 형태로 바꾸는 사전작업이 좀 필요하다. 그것만 하면 그냥 가중치가 동일한 정점과 간선이 주어질 때 특정 지점부터 특정 지점까지 도달 가능하는지만 판단하면 되므로, bfs나 dfs나 분리집합이나 아무거나 써서 찾아주면 된다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이.. 2023. 2. 2. [자바] 백준 3190 - 뱀 (java) 문제 : boj3190 필요 알고리즘 개념 시뮬레이션 문제에서 제시된대로 실제 뱀을 움직여보면서 언제 끝나는지 시뮬레이션을 돌려보면 된다. 덱 (deque) 등의 자료구조 뱀의 머리부분이 움직이고, 꼬리부분이 사라지는 부분을 시뮬레이션으로 구현하기 위해 내가 생각한 가장 적합한 자료구조는 덱을 사용하는 것인데, 구현만 가능하다면 어떤 자료구조를 써도 당연히 상관없다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 이하 풀이는.. 2023. 2. 1. 이전 1 ··· 12 13 14 15 16 17 18 ··· 77 다음