CSES - Yhden ero

Tehtäväsi on etsiä listasta pisin alijono, jossa jokaisen kahden vierekkäisen luvun ero on tasan 1. Esimerkiksi listassa [5,2,3,8,2,4,1] pisin tällainen alijono on [2,3,2,1], jonka pituus on 4.

Voit olettaa, että 1 \le n \le 100 ja jokainen listan alkio on kokonaisluku välillä 1 \le n \le 100.

Python

Toteuta tiedostoon onediff.py funktio find, joka antaa pisimmän alijonon pituuden.

def find(t):
    # TODO

if __name__ == "__main__":
    print(find([1,2,3,4,5])) # 5
    print(find([5,5,5,5,5])) # 1
    print(find([5,2,3,8,2,4,1])) # 4

Java

Toteuta tiedostoon OneDiff.java metodi find, joka antaa pisimmän alijonon pituuden.

public class OneDiff {
    public int find(int[] t) {
        // TODO
    }

    public static void main(String[] args) {
        OneDiff o = new OneDiff();
        System.out.println(o.find(new int[] {1,2,3,4,5})); // 5
        System.out.println(o.find(new int[] {5,5,5,5,5})); // 1
        System.out.println(o.find(new int[] {5,2,3,8,2,4,1})); // 4
    }
}