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
carevski's solution for 500: NewsFlow, written in Java
import java.util.*; public class NewsFlow { public static int minutes(String[] willing){ int brNaSlusateli = willing[0].length(); LinkedList red = new LinkedList(); boolean slusa[] = new boolean[15]; for (int i=0;i<15;i++) slusa[i]=false; slusa[0]=true; for(int i = 1;i<willing[0].length();i++){ if(willing[0].charAt(i) == 'Y'){ red.addLast((Object)i); } } LinkedList t; int min = 0; while(!red.isEmpty()){ t = new LinkedList(); while( !red.isEmpty() ){ int nareden = (int)(Integer)red.removeFirst(); slusa[nareden] = true; System.out.println(nareden); for(int i=0;i<brNaSlusateli; i++){ System.out.println(willing[nareden].charAt(i)); if(willing[nareden].charAt(i)=='Y' && slusa[i] == false){ System.out.println(i); t.addLast(i); } } //min++; } red = t; min++; } boolean slusaat = true; for(int i=0;i<brNaSlusateli;i++) if(slusa[i] == false){ //System.out.println(i); slusaat = false; } if( slusaat ) return min; else return -1; } public static void main(String args[]){ String[] will = new String[2]; will[0] = "NN"; will[1] = "YN"; System.out.println(NewsFlow.minutes(will)); } }