Loading...
2022. 9. 23. 03:02

DFS/BFS 정복하기 -영역을 구분하는 BFS의 성질 응용-

1. 문제 16234번: 인구 이동 (acmicpc.net) 16234번: 인구 이동 N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에는 A[r][c]명이 살고 있다. 인접한 나라 사이에는 국경선이 존재한다. 모 www.acmicpc.net N*N 크기의 배열에서 인접한 두 칸의 크기 차이가 L이상, R이하이면 연합을 이룬다. 모든 연합을 이루게 하고, 크기를 조절한 다음에 이러한 과정을 반복할때, 몇번이나 가능한지 구하는 프로그램을 작성 2. 풀이 문제를 잘 읽어보면 시뮬레이션을 수행해야한다 주어진 배열에서 인접한 두 칸의 차이가 L 이상, R 이하인지를 파악한다. 그러한 두 칸을 서로 연결하고, 이것을 배열의 모든 칸에 대..

2021. 12. 21. 00:18

몬테카를로(Monte-Carlo) 시뮬레이션에 대한 이론적인 설명

1. 목표 직사각형 안에 어떤 도형을 그려놓자. 빨간색 영역의 넓이는 얼마인지 알고 싶다. 2. 기본적인 원리 만약, 위와 같은 직사각형에서 임의의 난수를 하나 뽑는다고 하자. 그 난수가 빨간색 영역인 HIT에 들어갈 확률은 얼마인가? 직사각형의 넓이는 $c(b-a)$이고 빨간색 영역의 넓이를 $S$라고 하면, 기하학적 확률의 원리에 의해 $$p= \frac{(난수가 \; 목표로 \; 하는 \; 빨간색 \; 영역의 \; 넓이)}{(난수가 \; 있을 \; 수 \; 있는 \; 전체 \; 영역의 \; 넓이)} = \frac{S}{c(b-a)}$$ 그러나 $S$를 모른다는 것이 중요하다. 즉 우리는 p값도 알 수가 없다 그런데 $p$값을 다른 방법으로 추정해볼 수 있는데 위와 같은 직사각형 위에서 $N$개의 난..