Who determines who is responsible for the accident?

Both law enforcement and insurance companies make determinations on who is at fault, or if both drivers are partially at fault.
For the purpose of being ticketed and facing penalties for traffic violations, the police will determine who did what and charge the drivers accordingly.   For the insurance companies involved, a claims adjuster will be appointed and decide fault.  The police and the insurance companies don’t always agree on fault; for claim purposes, the insurance companies go by the decisions of their respective adjusters.
It may be that one driver is found to be fully at fault and will thus be liable for all damages, or both drivers may be found partially at fault for the incident.  If both drivers are found at fault, then state negligence laws will determine whose insurance pays what.
No-fault insurance applies only to bodily injuries. Your personal injury protection (PIP) pays for your own medical bills, but if the other driver was at fault, his liability coverage would pay for damage to your car.