문제 풀이/Baekjoon Online Judge
-
[BOJ 11724] 연결 요소의 개수문제 풀이/Baekjoon Online Judge 2023. 1. 28. 00:59
난이도 매겨진 난이도: Silver II (Standard) 체감 난이도: Silver II (±0) 태그 더보기 Depth First Search (깊이 우선 탐색) Connected Component (연결 요소) 풀이 1. 하나의 연결 요소를 구하는 방법은? 더보기 방향 없는 그래프에서 연결 요소를 구하는 방법은, 어떤 정점에서 출발해서 DFS를 돌린 뒤, 방문한 정점들을 모으면 됩니다. 2. 그럼 연결 요소의 개수는? 더보기 (1번 질문의 답)을, 아직까지 방문하지 않은 정점 하나를 찾은 뒤 이에 대해 돌려주면 됩니다. 한 번 반복에 새로운 연결 요소 하나를 찾게 되므로, 문제의 답은 반복의 횟수가 됩니다. 3. 시간복잡도는? 더보기 (맨 아랫줄만 읽으셔도 됩니다.) DFS 함수의 호출 횟수는, ..
-
[BOJ 11923] PUTOVANJE문제 풀이/Baekjoon Online Judge 2023. 1. 28. 00:12
난이도 매겨진 난이도: Bronze I 체감 난이도: Bronze I ~ Silver V (+0.5) 태그 더보기 Brute Force (브루트 포스) Simulation (시뮬레이션) 풀이 1. 시작하는 위치가 고정된다면, Mislav가 먹게 되는 과일의 개수는? 더보기 문제에서 정의된 Mislav의 이동 방식에 따라, 먹을 수 있다면 먹고 이동 / 아니라면 안 먹고 이동을 하게 됩니다. 위 과정을 직접 시뮬레이션하면, 특정 시작점에서 출발할 때 먹게 되는 과일의 개수를 셀 수 있습니다. 2. 그럼, (1번 질문의 답)을 가능한 모든 시작점에 대해 돌려준다면? 더보기 가능한 모든 시작점을 둘러보면서, 가장 많이 먹게 되는 경우를 찾아주면 됩니다. 시뮬레이션에 최댓값 찾기까지 복잡해보이지만, 배열에서 최..
-
[BOJ 2845] 파티가 끝나고 난 뒤문제 풀이/Baekjoon Online Judge 2023. 1. 27. 23:41
난이도 매겨진 난이도: Bronze IV 체감 난이도: Bronze V (-1) 태그 더보기 Mathematics (수학) Arithmetic (사칙연산) Conditional Statement (조건문) 풀이 1. 상근이가 알고 있는 참가자의 수는? 더보기 상근이가 알고 있는 참가자의 수는 (넓이) × (1m² 당 사람 수), 즉 \( L \times P \)가 됩니다. 2. 그럼 신문 기사와의 차이는? 더보기 신문 기사에 쓰인 값 \( X \)와의 차이는 (상근이가 알고 있는 값) - (쓰인 값), 즉 \( X - L \cdot P \)가 됩니다. 3. 신문 기사 5개에 대해서는? 더보기 5번 반복하면서, 각 신문 기사에 쓰인 값 \( X \)를 입력받은 뒤, 2번 질문의 답변과 같이 차이를 계산해 ..
-
[BOJ 24082] 立方体 (Cube)문제 풀이/Baekjoon Online Judge 2023. 1. 27. 23:18
난이도 매겨진 난이도: Bronze V 체감 난이도: Bronze V (±0) 태그 더보기 Mathematics (수학) Arithmetic (사칙연산) 풀이 더보기 한 변의 길이가 \( X \) cm이라면, 부피는 자명히 \( X^3 = X \times X \times X \)가 됩니다. \( X \)의 범위가 작으므로 int형에 담아줘도 됩니다. 1 2 3 void Main(){ ll x; cin >> x; cout
-
[BOJ 25083] 새싹문제 풀이/Baekjoon Online Judge 2023. 1. 26. 21:01
난이도 난이도: Bronze V 체감 난이도: Bronze V 태그 더보기 Output Only Escape Character Complicated Output 풀이 더보기 예제 출력대로 출력하면 됩니다. 아쉽게도 Text와 PHP가 막혔으므로, 사용하는 언어가 Escape Character (\', \" 등등의 글자)를 어떻게 다루는지 배워봅시다. 대부분의 언어에서, '와 "와 \는 '\'', '\"', '\\\'로 출력하면 됩니다. 줄바꿈을 직접 해줘야 한다면, '\n'으로 출력하면 됩니다. 나머지는 있는대로 출력하면 됩니다. 1 2 3 4 5 6 7 8 9 10 #include int main(){ puts(" ,r\'\"7"); puts("r`-_ ,' ,/"); puts(" \\. \". L_r..