usaco 4.2.1 Drainage Ditches
2014-05-04 15:35
239 查看
/* ID: daniel.20 LANG: JAVA TASK: ditch */ import java.util.*; import java.io.*; class problem3{ StringBuilder sb = new StringBuilder(); int[][] map = new int[220][220]; boolean vis[]; void solver() throws IOException{ long start = System.currentTimeMillis(); BufferedReader reader = new BufferedReader(new FileReader("ditch.in")); PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter("ditch.out"))); StringTokenizer st = new StringTokenizer(reader.readLine()); int n = Integer.valueOf(st.nextToken()); int m = Integer.valueOf(st.nextToken()); for(int i=0;i<n;i++){ st = new StringTokenizer(reader.readLine()); int from = Integer.valueOf(st.nextToken()); int to = Integer.valueOf(st.nextToken()); int w = Integer.valueOf(st.nextToken()); map[from][to]+=w; } //Dumper.print_2_arr(map, m+1, m+1); int flow = 0; while(true){ vis = new boolean[m+1]; int f = dfs(1,m,Integer.MAX_VALUE); if(f==0) break; flow+=f; } sb.append(flow); System.out.println(flow); pw.println(sb.toString()); pw.close(); System.out.println("$:"+(System.currentTimeMillis()-start)); System.exit(0); } int dfs(int s, int t, int f){ if(s==t) return f; vis[s] = true; for(int i=1;i<=t;i++){ if(vis[i]||map[s][i]<=0) continue; int tmp = dfs(i,t,Math.min(f, map[s][i])); if(tmp>0){ map[s][i]-=tmp; map[i][s]+=tmp; return tmp; } } return 0; } } public class ditch { public static void main(String[] args) throws Exception { problem3 p = new problem3(); p.solver(); } }
由于题目裸得太厉害,直接撸了一个朴素DFS找路径就过了
原来第四章也有这么水的,和前面几个搜索完全不在一个难度啊
相关文章推荐
- [usaco]4.2.1 最大流问题Drainage Ditches
- [USACO4.2.1]Drainage Ditches
- USACO 4.2.1 网络流 最高标号预流推进(HLPP)
- USACO4.2.1/ditch
- USACO 4.2.1 iSap + gap优化
- USACO 4.2.1 网络流 Dinic
- 网络流Sap+Gap(【USACO题库】4.2.1 Drainage Ditches草地排水 )
- 【USACO题库】4.2.1 Drainage Ditches草地排水
- 【USACO4.2.1】草地排水 网络流 最大流
- usaco4.2.1 Drainage Ditches
- 网络流Dinic(【USACO题库】4.2.1 Drainage Ditches草地排水 )
- USACO4.2.1 网络流最大流算法
- USACO4.2.1 Drainage Ditches (ditch)
- USACO 4.2.1 Ditch 网络最大流问题算法小结
- 转】USACO 4.2.1 Ditch 网络最大流问题算法小结
- USACO4.2.1 Drainage Ditches (ditch)
- USACO Training 4.2.1 Drainage Ditches 草地排水 题解与分析<网络流DINIC算法>
- USACO 4.2.1 PROB Drainage Ditches
- USACO 4.2.1 Ditch 网络最大流问题算法小结
- 【USACO4.2.1】草地排水 最大流