Posició més dominant. X93059


Statement
 

pdf   zip   main.py

Sigui v un vector de mida nn (on n3n \geq 3) que conté enters positius. La posició i del vector (on 0<i<n10 < i < n-1) és dominant si és el valor v[i] és més gran que els seus valors adjacents, és a dir, si v[i] és estríctament més gran que v[i-1] i que v[i+1]. Diem que la dominància de i (dom(i)dom(i)) és la diferència de v[i] amb els seus valors adjacents:

dom(i)=abs(v[i1]v[i])+abs(v[i]v[i+1]) per a 0<i<n1dom(i) = abs(v[i-1] - v[i]) + abs(v[i] - v[i+1]) \text{ per a } 0 < i < n-1

Siguin i i j dues posicions dominants de v. Diem que i és més dominant que j si i només si:

  1. i i j són dominants.

  2. dom(i)>dom(j)dom(i) > dom(j) o bé dom(i)=dom(j)dom(i) = dom(j) i i>ji > j.

Dit altrament: si i i j són dominants, llavors i és més dominant que j si té una dominància més gran o bé (en cas d’empat) i és estrictament més gran que j.

Fes la funció dominant(v) tal que, donat un vector v, torni la posició més dominant del vector si aquest existeix, o bé 1-1 en cas que no n’hi hagi cap.

Entrada

Un vector v d’enters, amb, almenys, tres elements.

Sortida

La posició més dominant, si existeix, 1-1 altrament.

Public test cases
  • Input

    4 1 2 3 6 2 10 1 5 2 2 1 3 1
    

    Output

    6
    
  • Input

    2 1 3 4 6 6 2 1 2 4
    

    Output

    -1
    
  • Input

    1 1 1 2 1 1 1 2 1 1
    

    Output

    7
    
  • Information
    Author
    INFO
    Language
    Catalan
    Official solutions
    Python
    User solutions
    Python