|
|
@ -1,10 +1,4 @@
|
|
|
|
import java.util.*;
|
|
|
|
import java.util.*;
|
|
|
|
import java.io.*;
|
|
|
|
|
|
|
|
import java.math.*;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import org.apache.commons.collections4.*;
|
|
|
|
|
|
|
|
import org.apache.commons.lang3.*;
|
|
|
|
|
|
|
|
import org.apache.commons.math3.*;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Template code to help you parse the standard input
|
|
|
|
* Template code to help you parse the standard input
|
|
|
@ -14,14 +8,27 @@ class Solution {
|
|
|
|
|
|
|
|
|
|
|
|
public static void main( String[] args ) {
|
|
|
|
public static void main( String[] args ) {
|
|
|
|
// hint: read values via Scanner methods
|
|
|
|
// hint: read values via Scanner methods
|
|
|
|
Scanner in = new Scanner( System.in );
|
|
|
|
var scanner = new Scanner( System.in );
|
|
|
|
|
|
|
|
|
|
|
|
// code your solution here
|
|
|
|
// code your solution here
|
|
|
|
|
|
|
|
Map<String, Integer> lastOccurrences = new HashMap<>();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int startIndex = 0;
|
|
|
|
|
|
|
|
int maxLength = 0;
|
|
|
|
|
|
|
|
int index = 0;
|
|
|
|
|
|
|
|
|
|
|
|
// use error to write to console
|
|
|
|
while ( scanner.hasNext() ) {
|
|
|
|
System.err.println( "debug" );
|
|
|
|
Integer previousOccurrence = lastOccurrences.put( scanner.next(), index++ );
|
|
|
|
|
|
|
|
if ( previousOccurrence != null ) {
|
|
|
|
|
|
|
|
if ( previousOccurrence >= startIndex ) {
|
|
|
|
|
|
|
|
maxLength = Math.max( maxLength, index - 1 - startIndex );
|
|
|
|
|
|
|
|
startIndex = previousOccurrence + 1;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
maxLength = Math.max( maxLength, index - startIndex );
|
|
|
|
|
|
|
|
|
|
|
|
// Write result with System.out.println()
|
|
|
|
// Write result with System.out.println()
|
|
|
|
System.out.println( "value" );
|
|
|
|
System.out.println( maxLength );
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|