using System;
using System.Collections.Generic;
class LongestConsecutiveSequence
{
public static int LongestConsecutive(int[] nums) {
HashSet<int> numSet = new HashSet<int>(nums);
int longestStreak = 0;
foreach (int num in numSet) {
// Check if it's the start of a sequence
if (!numSet.Contains(num - 1)) {
int currentNum = num;
int currentStreak = 1;
// Count the length of the sequence
while (numSet.Contains(currentNum + 1)) {
currentNum++;
currentStreak++;
}
longestStreak = Math.Max(longestStreak, currentStreak);
}
}
return longestStreak;
}
static void Main()
{
int[] nums = { 680, 4, 590, 3, 2, 1 };
int result = LongestConsecutive(nums);
Console.WriteLine("Length of the longest consecutive sequence: " + result);
}
}
/*
run:
Length of the longest consecutive sequence: 4
*/