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
toroman's solution for 200: Consecutive Numbers, written in Java
import java.util.Arrays; public class ConsecutiveNumbers { public int longestSequence(int[] n) { int len = n.length; int zeros = 0; Arrays.sort(n); for (int i=0; i<len; i++) if (n[i] == 0) zeros++; else break; if (zeros==len) return len; int max = 0; /* for (int f=zeros; f<len; f++) { int next = n[f]; int d =0; int z = zeros; for (int e=f; e<len; e++) if (n[e]==next) { next++; d++; } else if (z>) } */ for (int s=zeros; s<len; s++) { int z = zeros; int prev = n[s]; int d = 1; for (int e=s+1; e<len; e++) { if (n[e] == prev+1) { d++; prev++; }else if (z>0) { z--; e--; d++; prev++; } else { break; } } d+=z; max = d > max? d:max; } return max; } }