Register
|
Login
Home
News
Competitions
Practice
How to
Rankings
Calendar
Arena
CodeFu 2007
CodeFu'07 Highlights
Jazoon'07 Highlights
Schedule
Rules
Prizes
Results
Competitions
»
Main CodeFu Competitons
»
CodeFu 2007
»
Results
CodeFu 2007 Results
CodeFu Final Round Results
bobi4597's solution for 500: NewsFlow, written in Java
public class NewsFlow { int[] pom; int n; int minFlow = 100; int cntPominati = 0; String[] w; void raboti(int x) { if(pom[x] > minFlow) return; if(cntPominati==n) { if(minFlow > pom[x]) minFlow = pom[x]; return; } for(int j = 0; j < n; ++j) if(w[x].charAt(j)=='Y' && pom[j]==0) { pom[j] = pom[x]+1; ++cntPominati; raboti(j); pom[j] = 0; --cntPominati; } } public int minutes(String[] w) { this.w = w; n = w.length; pom = new int[n]; for(int i = 0; i < n; ++i) pom[i] = 0; pom[0] = 1; cntPominati = 1; minFlow = 100; raboti(0); if(minFlow == 100) return -1; else return minFlow-1; } }