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
Halicha's solution for 200: Consecutive Numbers, written in Java
public class ConsecutiveNumbers { public int longestSequence(int[] numbers) { for(int i=0;i<numbers.length;i++){ for(int j=i+1;j<numbers.length;j++){ if(numbers[i]>numbers[j]){ numbers[i]+=numbers[j]; numbers[j]=numbers[i]-numbers[j]; numbers[i]-=numbers[j]; } } } int nuli=0; int ccc=0; while (numbers[ccc]==0) { ccc++; nuli++; } int max=1; int tempNuli=nuli; int tempMax=1; int previous=numbers[nuli]; int i=nuli+1; int prodolzi=nuli+1; while(i<numbers.length){ if((previous+1)==numbers[i]){ System.out.println("max="+max+" +"+previous+"-- "+numbers[i]); tempMax++; previous=numbers[i]; if(tempMax>max) max=tempMax; i++; }else{ if(tempNuli!=0){ previous=previous+1; tempNuli--; tempMax++; if(tempMax>max) max=tempMax; }else{ tempNuli=nuli; tempMax=1; previous=numbers[i]; i=prodolzi; prodolzi++; } } } return max; } /*public static void main(String[] args) { int []test={4863,4309,6064,3702,4311,4313,3246,0,0}; ConsecutiveNumbers a = new ConsecutiveNumbers(); System.out.print(a.longestSequence(test)); }*/ }