Hirdetés

Új hozzászólás Aktív témák

  • emvy
    félisten

    Oke, jatszhatunk ezzel :) Szabalyok:
    - van hat bemenoparameter, m, d, m1, d1, m2, d2 -- kerdes, hogy m.d. datum m1.d1 es m2.d2. koze esik-e (hatarok beleertve). Ha m2.d2. az evben korabban van, mint m1.d1, akkor ugy vesszuk, hogy m2.d2. a kovetkezo evre esik.
    - feltesszuk, hogy a bemenoadatok ertelmesek (validaltak)

    Tesztek:

    m d m1 d1 m2 d2
    1 1 2 3 4 5 => false
    1 1 4 5 2 3 => true
    4 5 4 5 2 3 => true
    2 3 4 5 2 3 => true
    3 4 4 5 2 3 => false

    Az en nevezesem:

    public static boolean isInside( int m, int d, int m1, int d1, int m2, int d2)
    { return ((m2-m)<<4+d2-d)*((m-m1)<<4+d-d1)*((m2-m1)<<4+d2-d1)>=0; }

    Elnezest, elirtam:

    public static boolean isInside( int m, int d, int m1, int d1, int m2, int d2)
    { return ((m2-m)<<5+d2-d)*((m-m1)<<5+d-d1)*((m2-m1)<<5+d2-d1)>=0; }

    Lehet, hogy lehet ennel gyorsabbat is csinalni, de ez kozel van az optimalishoz :)

Új hozzászólás Aktív témák