class ColaPri {
  Nodo primero= null;
  void encolar(String s, int pri) {
    if (primero==null) // caso lista vacía
      primero= new Nodo(s, pri, null);
    else if (pri>primero.pri) // caso insertar en 1er. lugar
      primero= new Nodo(s, pri, primero);
    else { // caso insertar después del primer nodo
      Nodo ant= primero;
      Nodo e= ant.prox;
      while (e!=null && e.pri>=pri) {
        ant= e;
        e= e.prox;
      }
      ant.prox= new Nodo(s, pri, e);
    }
  }
  String sacar() {
    Nodo e= primero;
    if (e==null)
      return null;
    primero= e.prox;
    return e.s;
  }
}

class Nodo {
  String s;
  int pri;
  Nodo prox;
  Nodo(String s, int pri, Nodo prox) {
    this.s= s;
    this.pri= pri;
    this.prox= prox;
  }
}
