Wow vas a tener que explicar mejor lo que quieres hacer. No entendi bien tu pregunta. A la verdad que vale un millon de verdad. Te tratare de responder por partes a ver si logro aclarar lo que quieres hacer.
Nota bien importante:
Todo esto se resuelves si ingresas los datos que hay en el array a una base de datos usando GROUP BY y COUNT puedes sacar la informacion bien facil.
Primero
Cita: con un array asi puedo sumar los puntos de los (en este caso) dos ([kk] => 2) pilotos con mas puntos
Sí se puede sumar. Solo tienes que aprender como llegar hasta [kk]. Te sugiero leer sobre
foreach, se maneja muy bien con los array. Vas a tener que crear varios foreach anidados para llegar hasta [kk].
En esa parte lo que no entendi es lo que dice
con mas punto. Si es que te refieres a obtener los resultados de aquellos que tengan más punto usa la funcion
natcasesort para que coloques en orden de menor a mayor los resultados que tenga los [kk] y luego con
array_reverse los muestras al revés.
Cita: luego mostrar una tabla con todos los resultados destacando (con el fondo de la celda o algo asi) los pilotos que puntuan en ese GP para el equipo y en orden de puntos por equipo
Es casi lo mismo solo que tienes que organizar dentro de cada GP usando las funciones que te indique. Este proyecto vas a tener que leer como manejarte dentro de un array. Ya que como te indique si pasaras todo a una base de datos se haría menos complicado manejarla. No te puedo brindar un codigo de como hacerlo porque ese es el trabajo que ustedes quieren hacer, por lo tanto vas a tener que leer un poco sobre array y como manejarte en ellas.