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
KrvaviZmaj's solution for 200: Consecutive Numbers, written in Java
public class ConsecutiveNumbers { public int longestSequence(int[] numbers) { // bubble sort for (int i=0; i<numbers.length-1; i++) { for (int j=i+1; j<numbers.length; j++) { if (numbers[j] < numbers[i]) { int pom = numbers[i]; numbers[i] = numbers[j]; numbers[j] = pom; } } } // now... int poc = 0; while (numbers[poc] == 0) poc++; // broj na nuli int max =0; int nuli = poc; int dolz; int tNuli = nuli; for (int i=poc; i<numbers.length; i++) { dolz = 1; tNuli = nuli; int t = i; while ( (t+1 < numbers.length) && ((numbers[t+1] == numbers[t]+1) || ((numbers[t+1]-numbers[t]-1 <= tNuli) && (numbers[t+1] != numbers[t]+1))) ) { if (numbers[t+1] == numbers[t]+1) { dolz++; } else { tNuli = tNuli - (numbers[t+1]-numbers[t]-1); dolz += numbers[t+1]-numbers[t]; } t++; } dolz = dolz + tNuli; if (dolz > max) max = dolz; } return max; } }