Se una persona può afferire solo ed esclusivamente ad un ufficio potresti creare la tabella PersoneUffici e a questo punto la tabella CollegaAttività non ti servirebbe più perché attraverso le persone riesci a collegare anche gli uffici coinvolti in modo indiretto.
Se invece una persona può afferire a più uffici allora si giustifica quello che vuoi fare tu di aggiungere nella personeattvità l'ufficio per il quale quella persona sta svolgendo quella attività dato che altrimenti non avresti nuovamente univocità per l'accoppiata persona/attività rispetto all'ufficio.
Una cosa però evidenzierei: anche nel secondo caso secondo me ci starebbe bene una tabella personeUffici perché se una persona non partecipa a nessuna attività non sapresti a quale ufficio afferisce.
Spero di essermi spiegato in maniera comprensibile.