h0ngjun7   9년 전

전 이 문제를 MCMF(Mincost Maxflow) 알고리즘으로 풀었는데 다른 분의 소스를 읽다보니 잘 이해가 안되서 질문드립니다.

kdk8747님의 소스인데...(혹시나 소스 공개가 문제가 된다면 곧바로 글을 지우겠습니다)

가로로 배열하는 부분은 이해가 되는데 세로로 배열하는 부분은 이해가 어렵습니다ㅠㅠ

s 변수를 쉬프트한 값에 ((1<<m)-1))를 & 연산해주면서 현재 속해있는 행에 대한 상태로 작업을 하는데

세로로 배열하는 경우에 한칸 쉬프트하고 1을 더해준 게, 다음 행의 해당 열에 이미 작업을 했다는 걸 어떻게 표시하는건지...음...

혹시 아시는 분은 설명해주시면 대단히 감사하겠습니다!

h0ngjun7   9년 전

제가 비트마스크를 할 때마다 대단히 노가다스러운 코드만 짜왔었는데 이번 기회를 통해서 개선하고싶슴다ㅠㅠ

baekjoon   9년 전

@kdk8747님 어디계세요 

WeissBlume   9년 전

(그림)

c9293027ef495f6f39210d6625737c42.png

august14   9년 전

M번째 비트에 있는건 더 이상 볼 필요가 없기 때문입니당..

07ef265df45d283bbf9d658caba7ddab.png

h0ngjun7   9년 전

아! 해결됬습니다ㅎㅎ

댓글을 작성하려면 로그인해야 합니다.