Advertisement
Guest User

Advent Of Code Day 24

a guest
Dec 25th, 2023
255
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.63 KB | Source Code | 0 0
  1.         BigInteger Vax = _hail[0].Velocity.ToVector2(components).X;
  2.         BigInteger Vbx = _hail[1].Velocity.ToVector2(components).X;
  3.         BigInteger Vcx = _hail[2].Velocity.ToVector2(components).X;
  4.         BigInteger Vdx = _hail[3].Velocity.ToVector2(components).X;
  5.         BigInteger Vex = _hail[4].Velocity.ToVector2(components).X;
  6.        
  7.         BigInteger Vay = _hail[0].Velocity.ToVector2(components).Y;
  8.         BigInteger Vby = _hail[1].Velocity.ToVector2(components).Y;
  9.         BigInteger Vcy = _hail[2].Velocity.ToVector2(components).Y;
  10.         BigInteger Vdy = _hail[3].Velocity.ToVector2(components).Y;
  11.         BigInteger Vey = _hail[4].Velocity.ToVector2(components).Y;
  12.  
  13.         BigInteger Pax = _hail[0].StartPosition.ToVector2(components).X;
  14.         BigInteger Pbx = _hail[1].StartPosition.ToVector2(components).X;
  15.         BigInteger Pcx = _hail[2].StartPosition.ToVector2(components).X;
  16.         BigInteger Pdx = _hail[3].StartPosition.ToVector2(components).X;
  17.         BigInteger Pex = _hail[4].StartPosition.ToVector2(components).X;
  18.        
  19.         BigInteger Pay = _hail[0].StartPosition.ToVector2(components).Y;
  20.         BigInteger Pby = _hail[1].StartPosition.ToVector2(components).Y;
  21.         BigInteger Pcy = _hail[2].StartPosition.ToVector2(components).Y;
  22.         BigInteger Pdy = _hail[3].StartPosition.ToVector2(components).Y;
  23.         BigInteger Pey = _hail[4].StartPosition.ToVector2(components).Y;
  24.        
  25.        
  26.         BigInteger denominator = (((Vay - Vby) * (Pbx - Pcx) - (Vby - Vcy) * (Pax - Pbx)) * ((Pby-Pcy) * (Pcx - Pdx) - (Pcy-Pdy) * (Pbx - Pcx)) - ((Vby - Vcy) * (Pcx - Pdx) - (Vcy - Vdy) * (Pbx - Pcx)) * ((Pay-Pby) * (Pbx - Pcx) - (Pby-Pcy) * (Pax - Pbx))) * (((Vbx - Vcx) * (Pcx - Pdx) - (Vcx - Vdx) * (Pbx - Pcx)) * ((Pcy-Pdy) * (Pdx - Pex) - (Pdy-Pey) * (Pcx - Pdx)) - ((Vcx - Vdx) * (Pdx - Pex) - (Vdx - Vex) * (Pcx - Pdx)) * ((Pby-Pcy) * (Pcx - Pdx) - (Pcy-Pdy) * (Pbx - Pcx)))
  27.                                - (((Vby - Vcy) * (Pcx - Pdx) - (Vcy - Vdy) * (Pbx - Pcx)) * ((Pcy-Pdy) * (Pdx - Pex) - (Pdy-Pey) * (Pcx - Pdx)) - ((Vcy - Vdy) * (Pdx - Pex) - (Vdy - Vey) * (Pcx - Pdx)) * ((Pby-Pcy) * (Pcx - Pdx) - (Pcy-Pdy) * (Pbx - Pcx))) * (((Vax - Vbx) * (Pbx - Pcx) - (Vbx - Vcx) * (Pax - Pbx)) * ((Pby-Pcy) * (Pcx - Pdx) - (Pcy-Pdy) * (Pbx - Pcx)) - ((Vbx - Vcx) * (Pcx - Pdx) - (Vcx - Vdx) * (Pbx - Pcx)) * ((Pay-Pby) * (Pbx - Pcx) - (Pby-Pcy) * (Pax - Pbx)));
  28.        
  29.         BigInteger numerator = (((Pay-Pby) * (Pbx - Pcx) - (Pby-Pcy) * (Pax - Pbx)) * (((Pbx*Vby - Pcx*Vcy) - (Pby*Vbx - Pcy*Vcx)) * (Pcx - Pdx) - ((Pcx*Vcy - Pdx*Vdy) - (Pcy*Vcx - Pdy*Vdx)) * (Pbx - Pcx)) - ((Pby-Pcy) * (Pcx - Pdx) - (Pcy-Pdy) * (Pbx - Pcx)) * (((Pax*Vay - Pbx*Vby) - (Pay*Vax - Pby*Vbx)) * (Pbx - Pcx) - ((Pbx*Vby - Pcx*Vcy) - (Pby*Vbx - Pcy*Vcx)) * (Pax - Pbx))) * (((Vbx - Vcx) * (Pcx - Pdx) - (Vcx - Vdx) * (Pbx - Pcx)) * ((Pcy-Pdy) * (Pdx - Pex) - (Pdy-Pey) * (Pcx - Pdx)) - ((Vcx - Vdx) * (Pdx - Pex) - (Vdx - Vex) * (Pcx - Pdx)) * ((Pby-Pcy) * (Pcx - Pdx) - (Pcy-Pdy) * (Pbx - Pcx)))
  30.                              - (((Pby-Pcy) * (Pcx - Pdx) - (Pcy-Pdy) * (Pbx - Pcx)) * (((Pcx*Vcy - Pdx*Vdy) - (Pcy*Vcx - Pdy*Vdx)) * (Pdx - Pex) - ((Pdx*Vdy - Pex*Vey) - (Pdy*Vdx - Pey*Vex)) * (Pcx - Pdx)) - ((Pcy-Pdy) * (Pdx - Pex) - (Pdy-Pey) * (Pcx - Pdx)) * (((Pbx*Vby - Pcx*Vcy) - (Pby*Vbx - Pcy*Vcx)) * (Pcx - Pdx) - ((Pcx*Vcy - Pdx*Vdy) - (Pcy*Vcx - Pdy*Vdx)) * (Pbx - Pcx))) * (((Vax - Vbx) * (Pbx - Pcx) - (Vbx - Vcx) * (Pax - Pbx)) * ((Pby-Pcy) * (Pcx - Pdx) - (Pcy-Pdy) * (Pbx - Pcx)) - ((Vbx - Vcx) * (Pcx - Pdx) - (Vcx - Vdx) * (Pbx - Pcx)) * ((Pay-Pby) * (Pbx - Pcx) - (Pby-Pcy) * (Pax - Pbx)));
  31.  
  32.         return numerator / denominator;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement