블로그 옮겼습니다
Topcoder SRM 517 Div1(Medium) AdjacentSwaps
\(2\leq{N}\leq{50}\)\(0\leq{A[i]}\leq{N-1}\)N개의 원소로 이루어진 벡터 A가 주어진다. 벡터의 값들은 0과 N-1 사이값이며 중복되지않는다.\(0\leq{K}\leq{N-2}\)인 N-1가지의 K에 대해 각각 한번씩 swap(A[K], A[K+1]) 을 해야만 한다.그렇다면 이 swap을 하는 순서에 따라서 주어진 벡터의 결과값이 달라질 것이다.그렇다면 주어진 벡터가 0,1, ..., N-2, N-1 과 같은 형태로 오름차순 정렬되도록 하는 swap 순서는 총 몇가지가 있는지를구하는 문제이다. 이 문제는 DP로 풀 수가 있다. \(dp[i][j]\,:\,[i,\,j]\) 의 구간을 오름 차순 정렬하는 방법의 수오름 차순 정렬이라는 것은 [i, j] 구간에 어떤 수들이 ..
Algorithm/Problem Solving
2017. 5. 1. 22:07
조합(Combination, nCr) 빠르게 구하기
1234memset(d,0,sizeof(d)); for (i=0;i
Algorithm/Memo &Tips
2017. 5. 1. 13:38