--- 4.cpp.old	Thu May 22 16:17:00 2008
+++ 4.cpp.new	Thu May 22 16:16:47 2008
@@ -72,9 +72,7 @@
 		std::vector<std::vector<long> >(max_x,
 			std::vector<long>(m + 1, std::numeric_limits<long>::max())));
 
-	dp.front().swap(
-		std::vector<std::vector<long> >(max_x,
-			std::vector<long>(m + 1, 0)));
+	dp[0] = std::vector<std::vector<long> >(max_x, std::vector<long>(m + 1, 0));
 
 	REPE(y1, 0, n) REP(x1, 0, max_x) if (slip[y1][x1] >= 0) // source
 	{
