Hex Artifact Content
Not logged in

Artifact c7168a3555d839b7da4ff2476ec665018dfa4e9a:


0000: 23 69 6e 63 6c 75 64 65 20 3c 69 6f 73 74 72 65  #include <iostre
0010: 61 6d 3e 0d 0a 23 69 6e 63 6c 75 64 65 20 3c 73  am>..#include <s
0020: 73 74 72 65 61 6d 3e 0d 0a 23 69 6e 63 6c 75 64  stream>..#includ
0030: 65 20 3c 69 6f 6d 61 6e 69 70 3e 0d 0a 23 69 6e  e <iomanip>..#in
0040: 63 6c 75 64 65 20 3c 76 65 63 74 6f 72 3e 0d 0a  clude <vector>..
0050: 23 69 6e 63 6c 75 64 65 20 3c 73 74 72 69 6e 67  #include <string
0060: 3e 0d 0a 23 69 6e 63 6c 75 64 65 20 3c 6d 61 70  >..#include <map
0070: 3e 0d 0a 23 69 6e 63 6c 75 64 65 20 3c 73 65 74  >..#include <set
0080: 3e 0d 0a 23 69 6e 63 6c 75 64 65 20 3c 61 6c 67  >..#include <alg
0090: 6f 72 69 74 68 6d 3e 0d 0a 23 69 6e 63 6c 75 64  orithm>..#includ
00a0: 65 20 3c 6e 75 6d 65 72 69 63 3e 0d 0a 23 69 6e  e <numeric>..#in
00b0: 63 6c 75 64 65 20 3c 69 74 65 72 61 74 6f 72 3e  clude <iterator>
00c0: 0d 0a 23 69 6e 63 6c 75 64 65 20 3c 66 75 6e 63  ..#include <func
00d0: 74 69 6f 6e 61 6c 3e 0d 0a 23 69 6e 63 6c 75 64  tional>..#includ
00e0: 65 20 3c 63 6f 6d 70 6c 65 78 3e 0d 0a 23 69 6e  e <complex>..#in
00f0: 63 6c 75 64 65 20 3c 71 75 65 75 65 3e 0d 0a 23  clude <queue>..#
0100: 69 6e 63 6c 75 64 65 20 3c 73 74 61 63 6b 3e 0d  include <stack>.
0110: 0a 23 69 6e 63 6c 75 64 65 20 3c 63 6d 61 74 68  .#include <cmath
0120: 3e 0d 0a 23 69 6e 63 6c 75 64 65 20 3c 63 61 73  >..#include <cas
0130: 73 65 72 74 3e 0d 0a 23 69 6e 63 6c 75 64 65 20  sert>..#include 
0140: 3c 63 73 74 72 69 6e 67 3e 0d 0a 75 73 69 6e 67  <cstring>..using
0150: 20 6e 61 6d 65 73 70 61 63 65 20 73 74 64 3b 0d   namespace std;.
0160: 0a 74 79 70 65 64 65 66 20 6c 6f 6e 67 20 6c 6f  .typedef long lo
0170: 6e 67 20 4c 4c 3b 0d 0a 74 79 70 65 64 65 66 20  ng LL;..typedef 
0180: 63 6f 6d 70 6c 65 78 3c 64 6f 75 62 6c 65 3e 20  complex<double> 
0190: 43 4d 50 3b 0d 0a 0d 0a 63 6c 61 73 73 20 54 68  CMP;....class Th
01a0: 65 43 68 72 6f 6e 69 63 6c 65 73 4f 66 41 6d 62  eChroniclesOfAmb
01b0: 65 72 20 7b 20 70 75 62 6c 69 63 3a 0d 0a 09 64  er { public:...d
01c0: 6f 75 62 6c 65 20 6d 69 6e 69 6d 75 6d 54 69 6d  ouble minimumTim
01d0: 65 28 76 65 63 74 6f 72 20 3c 69 6e 74 3e 20 70  e(vector <int> p
01e0: 72 69 6e 63 65 58 2c 20 76 65 63 74 6f 72 20 3c  rinceX, vector <
01f0: 69 6e 74 3e 20 70 72 69 6e 63 65 59 2c 20 76 65  int> princeY, ve
0200: 63 74 6f 72 20 3c 69 6e 74 3e 20 64 65 73 74 69  ctor <int> desti
0210: 6e 61 74 69 6f 6e 58 2c 20 76 65 63 74 6f 72 20  nationX, vector 
0220: 3c 69 6e 74 3e 20 64 65 73 74 69 6e 61 74 69 6f  <int> destinatio
0230: 6e 59 29 20 0d 0a 09 7b 0d 0a 09 09 69 6e 74 20  nY) ...{....int 
0240: 4e 20 3d 20 70 72 69 6e 63 65 58 2e 73 69 7a 65  N = princeX.size
0250: 28 29 3b 0d 0a 0d 0a 09 09 2f 2f 20 64 5b 73 5d  ();......// d[s]
0260: 5b 67 5d 20 3a 3d 20 74 68 65 20 64 69 73 74 61  [g] := the dista
0270: 6e 63 65 20 66 72 6f 6d 20 70 72 69 6e 63 65 5b  nce from prince[
0280: 73 5d 20 74 6f 20 64 65 73 74 5b 67 5d 0d 0a 09  s] to dest[g]...
0290: 09 76 65 63 74 6f 72 3c 20 76 65 63 74 6f 72 3c  .vector< vector<
02a0: 64 6f 75 62 6c 65 3e 20 3e 20 64 28 4e 2c 20 76  double> > d(N, v
02b0: 65 63 74 6f 72 3c 64 6f 75 62 6c 65 3e 28 4e 29  ector<double>(N)
02c0: 29 3b 0d 0a 09 09 66 6f 72 28 69 6e 74 20 73 3d  );....for(int s=
02d0: 30 3b 20 73 3c 4e 3b 20 2b 2b 73 29 0d 0a 09 09  0; s<N; ++s)....
02e0: 09 66 6f 72 28 69 6e 74 20 67 3d 30 3b 20 67 3c  .for(int g=0; g<
02f0: 4e 3b 20 2b 2b 67 29 0d 0a 09 09 09 09 64 5b 73  N; ++g)......d[s
0300: 5d 5b 67 5d 20 3d 20 68 79 70 6f 74 28 70 72 69  ][g] = hypot(pri
0310: 6e 63 65 58 5b 73 5d 2d 64 65 73 74 69 6e 61 74  nceX[s]-destinat
0320: 69 6f 6e 58 5b 67 5d 2c 20 70 72 69 6e 63 65 59  ionX[g], princeY
0330: 5b 73 5d 2d 64 65 73 74 69 6e 61 74 69 6f 6e 59  [s]-destinationY
0340: 5b 67 5d 29 3b 0d 0a 0d 0a 09 09 2f 2f 20 6e 6f  [g]);......// no
0350: 20 74 65 6c 65 70 6f 72 74 61 74 69 6f 6e 0d 0a   teleportation..
0360: 09 09 64 6f 75 62 6c 65 20 6e 6f 54 65 6c 65 70  ..double noTelep
0370: 6f 20 3d 20 30 3b 0d 0a 09 09 66 6f 72 28 69 6e  o = 0;....for(in
0380: 74 20 69 3d 30 3b 20 69 3c 4e 3b 20 2b 2b 69 29  t i=0; i<N; ++i)
0390: 0d 0a 09 09 09 6e 6f 54 65 6c 65 70 6f 20 3d 20  .....noTelepo = 
03a0: 6d 61 78 28 6e 6f 54 65 6c 65 70 6f 2c 20 64 5b  max(noTelepo, d[
03b0: 69 5d 5b 69 5d 29 3b 0d 0a 0d 0a 09 09 2f 2f 20  i][i]);......// 
03c0: 77 69 74 68 20 74 65 6c 65 70 6f 72 74 61 74 69  with teleportati
03d0: 6f 6e 3a 20 61 74 20 6c 65 61 73 74 20 6f 6e 65  on: at least one
03e0: 20 70 6f 73 69 74 69 6f 6e 20 6d 75 73 74 20 62   position must b
03f0: 65 20 65 6d 70 74 79 0d 0a 09 09 64 6f 75 62 6c  e empty....doubl
0400: 65 20 61 6e 73 77 65 72 20 3d 20 6e 6f 54 65 6c  e answer = noTel
0410: 65 70 6f 3b 0d 0a 09 09 66 6f 72 28 69 6e 74 20  epo;....for(int 
0420: 75 6e 75 73 65 64 5f 73 3d 30 3b 20 75 6e 75 73  unused_s=0; unus
0430: 65 64 5f 73 3c 4e 3b 20 2b 2b 75 6e 75 73 65 64  ed_s<N; ++unused
0440: 5f 73 29 20 7b 0d 0a 09 09 09 64 6f 75 62 6c 65  _s) {.....double
0450: 20 77 69 74 68 54 65 6c 65 70 6f 20 3d 20 30 3b   withTelepo = 0;
0460: 0d 0a 09 09 09 66 6f 72 28 69 6e 74 20 67 3d 30  .....for(int g=0
0470: 3b 20 67 3c 4e 3b 20 2b 2b 67 29 20 7b 20 2f 2f  ; g<N; ++g) { //
0480: 20 66 6f 72 20 65 61 63 68 20 67 6f 61 6c 0d 0a   for each goal..
0490: 09 09 09 09 64 6f 75 62 6c 65 20 74 20 3d 20 31  ....double t = 1
04a0: 65 2b 33 30 30 3b 0d 0a 09 09 09 09 66 6f 72 28  e+300;......for(
04b0: 69 6e 74 20 73 3d 30 3b 20 73 3c 4e 3b 20 2b 2b  int s=0; s<N; ++
04c0: 73 29 20 69 66 28 20 73 20 21 3d 20 75 6e 75 73  s) if( s != unus
04d0: 65 64 5f 73 20 29 0d 0a 09 09 09 09 09 74 20 3d  ed_s ).......t =
04e0: 20 6d 69 6e 28 74 2c 20 64 5b 73 5d 5b 67 5d 29   min(t, d[s][g])
04f0: 3b 20 2f 2f 20 66 69 6e 64 20 74 68 65 20 6e 65  ; // find the ne
0500: 61 72 65 73 74 20 73 74 61 72 74 69 6e 67 20 70  arest starting p
0510: 6f 69 6e 74 0d 0a 09 09 09 09 77 69 74 68 54 65  oint......withTe
0520: 6c 65 70 6f 20 3d 20 6d 61 78 28 77 69 74 68 54  lepo = max(withT
0530: 65 6c 65 70 6f 2c 20 74 29 3b 0d 0a 09 09 09 7d  elepo, t);.....}
0540: 0d 0a 09 09 09 61 6e 73 77 65 72 20 3d 20 6d 69  .....answer = mi
0550: 6e 28 61 6e 73 77 65 72 2c 20 77 69 74 68 54 65  n(answer, withTe
0560: 6c 65 70 6f 29 3b 20 2f 2f 20 74 61 6b 65 20 74  lepo); // take t
0570: 68 65 20 6d 69 6e 69 6d 75 6d 0d 0a 09 09 7d 0d  he minimum....}.
0580: 0a 09 09 72 65 74 75 72 6e 20 61 6e 73 77 65 72  ...return answer
0590: 3b 0d 0a 09 7d 0d 0a 7d 3b 0d 0a 0d 0a 2f 2f 20  ;...}..};....// 
05a0: 42 45 47 49 4e 20 43 55 54 20 48 45 52 45 0d 0a  BEGIN CUT HERE..
05b0: 23 69 6e 63 6c 75 64 65 20 3c 63 74 69 6d 65 3e  #include <ctime>
05c0: 0d 0a 64 6f 75 62 6c 65 20 73 74 61 72 74 5f 74  ..double start_t
05d0: 69 6d 65 3b 20 73 74 72 69 6e 67 20 74 69 6d 65  ime; string time
05e0: 72 28 29 0d 0a 20 7b 20 6f 73 74 72 69 6e 67 73  r().. { ostrings
05f0: 74 72 65 61 6d 20 6f 73 3b 20 6f 73 20 3c 3c 20  tream os; os << 
0600: 22 20 28 22 20 3c 3c 20 69 6e 74 28 28 63 6c 6f  " (" << int((clo
0610: 63 6b 28 29 2d 73 74 61 72 74 5f 74 69 6d 65 29  ck()-start_time)
0620: 2f 43 4c 4f 43 4b 53 5f 50 45 52 5f 53 45 43 2a  /CLOCKS_PER_SEC*
0630: 31 30 30 30 29 20 3c 3c 20 22 20 6d 73 65 63 29  1000) << " msec)
0640: 22 3b 20 72 65 74 75 72 6e 20 6f 73 2e 73 74 72  "; return os.str
0650: 28 29 3b 20 7d 0d 0a 74 65 6d 70 6c 61 74 65 3c  (); }..template<
0660: 74 79 70 65 6e 61 6d 65 20 54 3e 20 6f 73 74 72  typename T> ostr
0670: 65 61 6d 26 20 6f 70 65 72 61 74 6f 72 3c 3c 28  eam& operator<<(
0680: 6f 73 74 72 65 61 6d 26 20 6f 73 2c 20 63 6f 6e  ostream& os, con
0690: 73 74 20 76 65 63 74 6f 72 3c 54 3e 26 20 76 29  st vector<T>& v)
06a0: 0d 0a 20 7b 20 6f 73 20 3c 3c 20 22 7b 20 22 3b  .. { os << "{ ";
06b0: 0d 0a 20 20 20 66 6f 72 28 74 79 70 65 6e 61 6d  ..   for(typenam
06c0: 65 20 76 65 63 74 6f 72 3c 54 3e 3a 3a 63 6f 6e  e vector<T>::con
06d0: 73 74 5f 69 74 65 72 61 74 6f 72 20 69 74 3d 76  st_iterator it=v
06e0: 2e 62 65 67 69 6e 28 29 3b 20 69 74 21 3d 76 2e  .begin(); it!=v.
06f0: 65 6e 64 28 29 3b 20 2b 2b 69 74 29 0d 0a 20 20  end(); ++it)..  
0700: 20 6f 73 20 3c 3c 20 27 5c 22 27 20 3c 3c 20 2a   os << '\"' << *
0710: 69 74 20 3c 3c 20 27 5c 22 27 20 3c 3c 20 28 69  it << '\"' << (i
0720: 74 2b 31 3d 3d 76 2e 65 6e 64 28 29 20 3f 20 22  t+1==v.end() ? "
0730: 22 20 3a 20 22 2c 20 22 29 3b 20 6f 73 20 3c 3c  " : ", "); os <<
0740: 20 22 20 7d 22 3b 20 72 65 74 75 72 6e 20 6f 73   " }"; return os
0750: 3b 20 7d 0d 0a 76 6f 69 64 20 76 65 72 69 66 79  ; }..void verify
0760: 5f 63 61 73 65 28 63 6f 6e 73 74 20 64 6f 75 62  _case(const doub
0770: 6c 65 26 20 45 78 70 65 63 74 65 64 2c 20 63 6f  le& Expected, co
0780: 6e 73 74 20 64 6f 75 62 6c 65 26 20 52 65 63 65  nst double& Rece
0790: 69 76 65 64 29 20 7b 0d 0a 20 62 6f 6f 6c 20 6f  ived) {.. bool o
07a0: 6b 20 3d 20 28 61 62 73 28 45 78 70 65 63 74 65  k = (abs(Expecte
07b0: 64 20 2d 20 52 65 63 65 69 76 65 64 29 20 3c 20  d - Received) < 
07c0: 31 65 2d 39 29 3b 0d 0a 20 69 66 28 6f 6b 29 20  1e-9);.. if(ok) 
07d0: 63 65 72 72 20 3c 3c 20 22 50 41 53 53 45 44 22  cerr << "PASSED"
07e0: 20 3c 3c 20 74 69 6d 65 72 28 29 20 3c 3c 20 65   << timer() << e
07f0: 6e 64 6c 3b 20 20 65 6c 73 65 20 7b 20 63 65 72  ndl;  else { cer
0800: 72 20 3c 3c 20 22 46 41 49 4c 45 44 22 20 3c 3c  r << "FAILED" <<
0810: 20 74 69 6d 65 72 28 29 20 3c 3c 20 65 6e 64 6c   timer() << endl
0820: 3b 0d 0a 20 63 65 72 72 20 3c 3c 20 22 5c 74 6f  ;.. cerr << "\to
0830: 3a 20 5c 22 22 20 3c 3c 20 45 78 70 65 63 74 65  : \"" << Expecte
0840: 64 20 3c 3c 20 27 5c 22 27 20 3c 3c 20 65 6e 64  d << '\"' << end
0850: 6c 20 3c 3c 20 22 5c 74 78 3a 20 5c 22 22 20 3c  l << "\tx: \"" <
0860: 3c 20 52 65 63 65 69 76 65 64 20 3c 3c 20 27 5c  < Received << '\
0870: 22 27 20 3c 3c 20 65 6e 64 6c 3b 20 7d 20 7d 0d  "' << endl; } }.
0880: 0a 23 64 65 66 69 6e 65 20 43 41 53 45 28 4e 29  .#define CASE(N)
0890: 20 7b 63 65 72 72 20 3c 3c 20 22 54 65 73 74 20   {cerr << "Test 
08a0: 43 61 73 65 20 23 22 20 3c 3c 20 4e 20 3c 3c 20  Case #" << N << 
08b0: 22 2e 2e 2e 22 20 3c 3c 20 66 6c 75 73 68 3b 20  "..." << flush; 
08c0: 73 74 61 72 74 5f 74 69 6d 65 3d 63 6c 6f 63 6b  start_time=clock
08d0: 28 29 3b 0d 0a 23 64 65 66 69 6e 65 20 45 4e 44  ();..#define END
08e0: 09 20 76 65 72 69 66 79 5f 63 61 73 65 28 5f 2c  . verify_case(_,
08f0: 20 54 68 65 43 68 72 6f 6e 69 63 6c 65 73 4f 66   TheChroniclesOf
0900: 41 6d 62 65 72 28 29 2e 6d 69 6e 69 6d 75 6d 54  Amber().minimumT
0910: 69 6d 65 28 70 72 69 6e 63 65 58 2c 20 70 72 69  ime(princeX, pri
0920: 6e 63 65 59 2c 20 64 65 73 74 69 6e 61 74 69 6f  nceY, destinatio
0930: 6e 58 2c 20 64 65 73 74 69 6e 61 74 69 6f 6e 59  nX, destinationY
0940: 29 29 3b 7d 0d 0a 69 6e 74 20 6d 61 69 6e 28 29  ));}..int main()
0950: 7b 0d 0a 0d 0a 43 41 53 45 28 30 29 0d 0a 09 69  {....CASE(0)...i
0960: 6e 74 20 70 72 69 6e 63 65 58 5f 5b 5d 20 3d 20  nt princeX_[] = 
0970: 7b 31 2c 35 2c 35 7d 3b 0d 0a 09 20 20 76 65 63  {1,5,5};...  vec
0980: 74 6f 72 20 3c 69 6e 74 3e 20 70 72 69 6e 63 65  tor <int> prince
0990: 58 28 70 72 69 6e 63 65 58 5f 2c 20 70 72 69 6e  X(princeX_, prin
09a0: 63 65 58 5f 2b 73 69 7a 65 6f 66 28 70 72 69 6e  ceX_+sizeof(prin
09b0: 63 65 58 5f 29 2f 73 69 7a 65 6f 66 28 2a 70 72  ceX_)/sizeof(*pr
09c0: 69 6e 63 65 58 5f 29 29 3b 20 0d 0a 09 69 6e 74  inceX_)); ...int
09d0: 20 70 72 69 6e 63 65 59 5f 5b 5d 20 3d 20 7b 30   princeY_[] = {0
09e0: 2c 30 2c 30 7d 3b 0d 0a 09 20 20 76 65 63 74 6f  ,0,0};...  vecto
09f0: 72 20 3c 69 6e 74 3e 20 70 72 69 6e 63 65 59 28  r <int> princeY(
0a00: 70 72 69 6e 63 65 59 5f 2c 20 70 72 69 6e 63 65  princeY_, prince
0a10: 59 5f 2b 73 69 7a 65 6f 66 28 70 72 69 6e 63 65  Y_+sizeof(prince
0a20: 59 5f 29 2f 73 69 7a 65 6f 66 28 2a 70 72 69 6e  Y_)/sizeof(*prin
0a30: 63 65 59 5f 29 29 3b 20 0d 0a 09 69 6e 74 20 64  ceY_)); ...int d
0a40: 65 73 74 69 6e 61 74 69 6f 6e 58 5f 5b 5d 20 3d  estinationX_[] =
0a50: 20 7b 31 2c 31 2c 30 7d 3b 0d 0a 09 20 20 76 65   {1,1,0};...  ve
0a60: 63 74 6f 72 20 3c 69 6e 74 3e 20 64 65 73 74 69  ctor <int> desti
0a70: 6e 61 74 69 6f 6e 58 28 64 65 73 74 69 6e 61 74  nationX(destinat
0a80: 69 6f 6e 58 5f 2c 20 64 65 73 74 69 6e 61 74 69  ionX_, destinati
0a90: 6f 6e 58 5f 2b 73 69 7a 65 6f 66 28 64 65 73 74  onX_+sizeof(dest
0aa0: 69 6e 61 74 69 6f 6e 58 5f 29 2f 73 69 7a 65 6f  inationX_)/sizeo
0ab0: 66 28 2a 64 65 73 74 69 6e 61 74 69 6f 6e 58 5f  f(*destinationX_
0ac0: 29 29 3b 20 0d 0a 09 69 6e 74 20 64 65 73 74 69  )); ...int desti
0ad0: 6e 61 74 69 6f 6e 59 5f 5b 5d 20 3d 20 7b 34 2c  nationY_[] = {4,
0ae0: 32 2c 33 7d 3b 0d 0a 09 20 20 76 65 63 74 6f 72  2,3};...  vector
0af0: 20 3c 69 6e 74 3e 20 64 65 73 74 69 6e 61 74 69   <int> destinati
0b00: 6f 6e 59 28 64 65 73 74 69 6e 61 74 69 6f 6e 59  onY(destinationY
0b10: 5f 2c 20 64 65 73 74 69 6e 61 74 69 6f 6e 59 5f  _, destinationY_
0b20: 2b 73 69 7a 65 6f 66 28 64 65 73 74 69 6e 61 74  +sizeof(destinat
0b30: 69 6f 6e 59 5f 29 2f 73 69 7a 65 6f 66 28 2a 64  ionY_)/sizeof(*d
0b40: 65 73 74 69 6e 61 74 69 6f 6e 59 5f 29 29 3b 20  estinationY_)); 
0b50: 0d 0a 09 64 6f 75 62 6c 65 20 5f 20 3d 20 34 2e  ...double _ = 4.
0b60: 30 3b 20 0d 0a 45 4e 44 0d 0a 43 41 53 45 28 31  0; ..END..CASE(1
0b70: 29 0d 0a 09 69 6e 74 20 70 72 69 6e 63 65 58 5f  )...int princeX_
0b80: 5b 5d 20 3d 20 7b 30 2c 30 2c 30 7d 3b 0d 0a 09  [] = {0,0,0};...
0b90: 20 20 76 65 63 74 6f 72 20 3c 69 6e 74 3e 20 70    vector <int> p
0ba0: 72 69 6e 63 65 58 28 70 72 69 6e 63 65 58 5f 2c  rinceX(princeX_,
0bb0: 20 70 72 69 6e 63 65 58 5f 2b 73 69 7a 65 6f 66   princeX_+sizeof
0bc0: 28 70 72 69 6e 63 65 58 5f 29 2f 73 69 7a 65 6f  (princeX_)/sizeo
0bd0: 66 28 2a 70 72 69 6e 63 65 58 5f 29 29 3b 20 0d  f(*princeX_)); .
0be0: 0a 09 69 6e 74 20 70 72 69 6e 63 65 59 5f 5b 5d  ..int princeY_[]
0bf0: 20 3d 20 7b 31 2c 32 2c 33 7d 3b 0d 0a 09 20 20   = {1,2,3};...  
0c00: 76 65 63 74 6f 72 20 3c 69 6e 74 3e 20 70 72 69  vector <int> pri
0c10: 6e 63 65 59 28 70 72 69 6e 63 65 59 5f 2c 20 70  nceY(princeY_, p
0c20: 72 69 6e 63 65 59 5f 2b 73 69 7a 65 6f 66 28 70  rinceY_+sizeof(p
0c30: 72 69 6e 63 65 59 5f 29 2f 73 69 7a 65 6f 66 28  rinceY_)/sizeof(
0c40: 2a 70 72 69 6e 63 65 59 5f 29 29 3b 20 0d 0a 09  *princeY_)); ...
0c50: 69 6e 74 20 64 65 73 74 69 6e 61 74 69 6f 6e 58  int destinationX
0c60: 5f 5b 5d 20 3d 20 7b 30 2c 30 2c 30 7d 3b 0d 0a  _[] = {0,0,0};..
0c70: 09 20 20 76 65 63 74 6f 72 20 3c 69 6e 74 3e 20  .  vector <int> 
0c80: 64 65 73 74 69 6e 61 74 69 6f 6e 58 28 64 65 73  destinationX(des
0c90: 74 69 6e 61 74 69 6f 6e 58 5f 2c 20 64 65 73 74  tinationX_, dest
0ca0: 69 6e 61 74 69 6f 6e 58 5f 2b 73 69 7a 65 6f 66  inationX_+sizeof
0cb0: 28 64 65 73 74 69 6e 61 74 69 6f 6e 58 5f 29 2f  (destinationX_)/
0cc0: 73 69 7a 65 6f 66 28 2a 64 65 73 74 69 6e 61 74  sizeof(*destinat
0cd0: 69 6f 6e 58 5f 29 29 3b 20 0d 0a 09 69 6e 74 20  ionX_)); ...int 
0ce0: 64 65 73 74 69 6e 61 74 69 6f 6e 59 5f 5b 5d 20  destinationY_[] 
0cf0: 3d 20 7b 30 2c 32 2c 34 7d 3b 0d 0a 09 20 20 76  = {0,2,4};...  v
0d00: 65 63 74 6f 72 20 3c 69 6e 74 3e 20 64 65 73 74  ector <int> dest
0d10: 69 6e 61 74 69 6f 6e 59 28 64 65 73 74 69 6e 61  inationY(destina
0d20: 74 69 6f 6e 59 5f 2c 20 64 65 73 74 69 6e 61 74  tionY_, destinat
0d30: 69 6f 6e 59 5f 2b 73 69 7a 65 6f 66 28 64 65 73  ionY_+sizeof(des
0d40: 74 69 6e 61 74 69 6f 6e 59 5f 29 2f 73 69 7a 65  tinationY_)/size
0d50: 6f 66 28 2a 64 65 73 74 69 6e 61 74 69 6f 6e 59  of(*destinationY
0d60: 5f 29 29 3b 20 0d 0a 09 64 6f 75 62 6c 65 20 5f  _)); ...double _
0d70: 20 3d 20 31 2e 30 3b 20 0d 0a 45 4e 44 0d 0a 43   = 1.0; ..END..C
0d80: 41 53 45 28 32 29 0d 0a 09 69 6e 74 20 70 72 69  ASE(2)...int pri
0d90: 6e 63 65 58 5f 5b 5d 20 3d 20 7b 30 2c 30 2c 30  nceX_[] = {0,0,0
0da0: 7d 3b 0d 0a 09 20 20 76 65 63 74 6f 72 20 3c 69  };...  vector <i
0db0: 6e 74 3e 20 70 72 69 6e 63 65 58 28 70 72 69 6e  nt> princeX(prin
0dc0: 63 65 58 5f 2c 20 70 72 69 6e 63 65 58 5f 2b 73  ceX_, princeX_+s
0dd0: 69 7a 65 6f 66 28 70 72 69 6e 63 65 58 5f 29 2f  izeof(princeX_)/
0de0: 73 69 7a 65 6f 66 28 2a 70 72 69 6e 63 65 58 5f  sizeof(*princeX_
0df0: 29 29 3b 20 0d 0a 09 69 6e 74 20 70 72 69 6e 63  )); ...int princ
0e00: 65 59 5f 5b 5d 20 3d 20 7b 31 2c 32 2c 33 7d 3b  eY_[] = {1,2,3};
0e10: 0d 0a 09 20 20 76 65 63 74 6f 72 20 3c 69 6e 74  ...  vector <int
0e20: 3e 20 70 72 69 6e 63 65 59 28 70 72 69 6e 63 65  > princeY(prince
0e30: 59 5f 2c 20 70 72 69 6e 63 65 59 5f 2b 73 69 7a  Y_, princeY_+siz
0e40: 65 6f 66 28 70 72 69 6e 63 65 59 5f 29 2f 73 69  eof(princeY_)/si
0e50: 7a 65 6f 66 28 2a 70 72 69 6e 63 65 59 5f 29 29  zeof(*princeY_))
0e60: 3b 20 0d 0a 09 69 6e 74 20 64 65 73 74 69 6e 61  ; ...int destina
0e70: 74 69 6f 6e 58 5f 5b 5d 20 3d 20 7b 30 2c 30 2c  tionX_[] = {0,0,
0e80: 30 7d 3b 0d 0a 09 20 20 76 65 63 74 6f 72 20 3c  0};...  vector <
0e90: 69 6e 74 3e 20 64 65 73 74 69 6e 61 74 69 6f 6e  int> destination
0ea0: 58 28 64 65 73 74 69 6e 61 74 69 6f 6e 58 5f 2c  X(destinationX_,
0eb0: 20 64 65 73 74 69 6e 61 74 69 6f 6e 58 5f 2b 73   destinationX_+s
0ec0: 69 7a 65 6f 66 28 64 65 73 74 69 6e 61 74 69 6f  izeof(destinatio
0ed0: 6e 58 5f 29 2f 73 69 7a 65 6f 66 28 2a 64 65 73  nX_)/sizeof(*des
0ee0: 74 69 6e 61 74 69 6f 6e 58 5f 29 29 3b 20 0d 0a  tinationX_)); ..
0ef0: 09 69 6e 74 20 64 65 73 74 69 6e 61 74 69 6f 6e  .int destination
0f00: 59 5f 5b 5d 20 3d 20 7b 34 2c 32 2c 30 7d 3b 0d  Y_[] = {4,2,0};.
0f10: 0a 09 20 20 76 65 63 74 6f 72 20 3c 69 6e 74 3e  ..  vector <int>
0f20: 20 64 65 73 74 69 6e 61 74 69 6f 6e 59 28 64 65   destinationY(de
0f30: 73 74 69 6e 61 74 69 6f 6e 59 5f 2c 20 64 65 73  stinationY_, des
0f40: 74 69 6e 61 74 69 6f 6e 59 5f 2b 73 69 7a 65 6f  tinationY_+sizeo
0f50: 66 28 64 65 73 74 69 6e 61 74 69 6f 6e 59 5f 29  f(destinationY_)
0f60: 2f 73 69 7a 65 6f 66 28 2a 64 65 73 74 69 6e 61  /sizeof(*destina
0f70: 74 69 6f 6e 59 5f 29 29 3b 20 0d 0a 09 64 6f 75  tionY_)); ...dou
0f80: 62 6c 65 20 5f 20 3d 20 31 2e 30 3b 20 0d 0a 45  ble _ = 1.0; ..E
0f90: 4e 44 0d 0a 43 41 53 45 28 33 29 0d 0a 09 69 6e  ND..CASE(3)...in
0fa0: 74 20 70 72 69 6e 63 65 58 5f 5b 5d 20 3d 20 7b  t princeX_[] = {
0fb0: 30 2c 33 2c 35 7d 3b 0d 0a 09 20 20 76 65 63 74  0,3,5};...  vect
0fc0: 6f 72 20 3c 69 6e 74 3e 20 70 72 69 6e 63 65 58  or <int> princeX
0fd0: 28 70 72 69 6e 63 65 58 5f 2c 20 70 72 69 6e 63  (princeX_, princ
0fe0: 65 58 5f 2b 73 69 7a 65 6f 66 28 70 72 69 6e 63  eX_+sizeof(princ
0ff0: 65 58 5f 29 2f 73 69 7a 65 6f 66 28 2a 70 72 69  eX_)/sizeof(*pri
1000: 6e 63 65 58 5f 29 29 3b 20 0d 0a 09 69 6e 74 20  nceX_)); ...int 
1010: 70 72 69 6e 63 65 59 5f 5b 5d 20 3d 20 7b 30 2c  princeY_[] = {0,
1020: 34 2c 30 7d 3b 0d 0a 09 20 20 76 65 63 74 6f 72  4,0};...  vector
1030: 20 3c 69 6e 74 3e 20 70 72 69 6e 63 65 59 28 70   <int> princeY(p
1040: 72 69 6e 63 65 59 5f 2c 20 70 72 69 6e 63 65 59  rinceY_, princeY
1050: 5f 2b 73 69 7a 65 6f 66 28 70 72 69 6e 63 65 59  _+sizeof(princeY
1060: 5f 29 2f 73 69 7a 65 6f 66 28 2a 70 72 69 6e 63  _)/sizeof(*princ
1070: 65 59 5f 29 29 3b 20 0d 0a 09 69 6e 74 20 64 65  eY_)); ...int de
1080: 73 74 69 6e 61 74 69 6f 6e 58 5f 5b 5d 20 3d 20  stinationX_[] = 
1090: 7b 33 2c 35 2c 30 7d 3b 0d 0a 09 20 20 76 65 63  {3,5,0};...  vec
10a0: 74 6f 72 20 3c 69 6e 74 3e 20 64 65 73 74 69 6e  tor <int> destin
10b0: 61 74 69 6f 6e 58 28 64 65 73 74 69 6e 61 74 69  ationX(destinati
10c0: 6f 6e 58 5f 2c 20 64 65 73 74 69 6e 61 74 69 6f  onX_, destinatio
10d0: 6e 58 5f 2b 73 69 7a 65 6f 66 28 64 65 73 74 69  nX_+sizeof(desti
10e0: 6e 61 74 69 6f 6e 58 5f 29 2f 73 69 7a 65 6f 66  nationX_)/sizeof
10f0: 28 2a 64 65 73 74 69 6e 61 74 69 6f 6e 58 5f 29  (*destinationX_)
1100: 29 3b 20 0d 0a 09 69 6e 74 20 64 65 73 74 69 6e  ); ...int destin
1110: 61 74 69 6f 6e 59 5f 5b 5d 20 3d 20 7b 34 2c 30  ationY_[] = {4,0
1120: 2c 30 7d 3b 0d 0a 09 20 20 76 65 63 74 6f 72 20  ,0};...  vector 
1130: 3c 69 6e 74 3e 20 64 65 73 74 69 6e 61 74 69 6f  <int> destinatio
1140: 6e 59 28 64 65 73 74 69 6e 61 74 69 6f 6e 59 5f  nY(destinationY_
1150: 2c 20 64 65 73 74 69 6e 61 74 69 6f 6e 59 5f 2b  , destinationY_+
1160: 73 69 7a 65 6f 66 28 64 65 73 74 69 6e 61 74 69  sizeof(destinati
1170: 6f 6e 59 5f 29 2f 73 69 7a 65 6f 66 28 2a 64 65  onY_)/sizeof(*de
1180: 73 74 69 6e 61 74 69 6f 6e 59 5f 29 29 3b 20 0d  stinationY_)); .
1190: 0a 09 64 6f 75 62 6c 65 20 5f 20 3d 20 34 2e 34  ..double _ = 4.4
11a0: 37 32 31 33 35 39 35 34 39 39 39 35 38 3b 20 0d  7213595499958; .
11b0: 0a 45 4e 44 0d 0a 43 41 53 45 28 34 29 0d 0a 09  .END..CASE(4)...
11c0: 69 6e 74 20 70 72 69 6e 63 65 58 5f 5b 5d 20 3d  int princeX_[] =
11d0: 20 7b 33 36 32 39 2c 36 37 35 31 2c 38 36 35 35   {3629,6751,8655
11e0: 2c 35 31 31 35 2c 37 38 30 39 2c 36 37 35 39 2c  ,5115,7809,6759,
11f0: 37 31 33 33 2c 31 38 31 30 2c 36 31 30 32 2c 32  7133,1810,6102,2
1200: 35 33 39 2c 31 37 37 37 2c 32 34 32 7d 3b 0d 0a  539,1777,242};..
1210: 09 20 20 76 65 63 74 6f 72 20 3c 69 6e 74 3e 20  .  vector <int> 
1220: 70 72 69 6e 63 65 58 28 70 72 69 6e 63 65 58 5f  princeX(princeX_
1230: 2c 20 70 72 69 6e 63 65 58 5f 2b 73 69 7a 65 6f  , princeX_+sizeo
1240: 66 28 70 72 69 6e 63 65 58 5f 29 2f 73 69 7a 65  f(princeX_)/size
1250: 6f 66 28 2a 70 72 69 6e 63 65 58 5f 29 29 3b 20  of(*princeX_)); 
1260: 0d 0a 09 69 6e 74 20 70 72 69 6e 63 65 59 5f 5b  ...int princeY_[
1270: 5d 20 3d 20 7b 35 32 39 34 2c 31 38 30 2c 39 38  ] = {5294,180,98
1280: 38 2c 37 37 38 30 2c 31 36 33 35 2c 37 39 30 34  8,7780,1635,7904
1290: 2c 38 34 35 2c 37 34 30 35 2c 34 38 30 30 2c 32  ,845,7405,4800,2
12a0: 35 36 37 2c 34 37 39 35 2c 32 33 33 39 7d 3b 0d  567,4795,2339};.
12b0: 0a 09 20 20 76 65 63 74 6f 72 20 3c 69 6e 74 3e  ..  vector <int>
12c0: 20 70 72 69 6e 63 65 59 28 70 72 69 6e 63 65 59   princeY(princeY
12d0: 5f 2c 20 70 72 69 6e 63 65 59 5f 2b 73 69 7a 65  _, princeY_+size
12e0: 6f 66 28 70 72 69 6e 63 65 59 5f 29 2f 73 69 7a  of(princeY_)/siz
12f0: 65 6f 66 28 2a 70 72 69 6e 63 65 59 5f 29 29 3b  eof(*princeY_));
1300: 20 0d 0a 09 69 6e 74 20 64 65 73 74 69 6e 61 74   ...int destinat
1310: 69 6f 6e 58 5f 5b 5d 20 3d 20 7b 38 37 32 33 2c  ionX_[] = {8723,
1320: 39 32 37 35 2c 36 37 30 35 2c 35 38 37 35 2c 37  9275,6705,5875,7
1330: 39 38 31 2c 37 36 36 36 2c 31 31 35 38 2c 34 31  981,7666,1158,41
1340: 33 35 2c 31 37 2c 32 39 38 34 2c 35 30 38 36 2c  35,17,2984,5086,
1350: 33 35 37 30 7d 3b 0d 0a 09 20 20 76 65 63 74 6f  3570};...  vecto
1360: 72 20 3c 69 6e 74 3e 20 64 65 73 74 69 6e 61 74  r <int> destinat
1370: 69 6f 6e 58 28 64 65 73 74 69 6e 61 74 69 6f 6e  ionX(destination
1380: 58 5f 2c 20 64 65 73 74 69 6e 61 74 69 6f 6e 58  X_, destinationX
1390: 5f 2b 73 69 7a 65 6f 66 28 64 65 73 74 69 6e 61  _+sizeof(destina
13a0: 74 69 6f 6e 58 5f 29 2f 73 69 7a 65 6f 66 28 2a  tionX_)/sizeof(*
13b0: 64 65 73 74 69 6e 61 74 69 6f 6e 58 5f 29 29 3b  destinationX_));
13c0: 20 0d 0a 09 69 6e 74 20 64 65 73 74 69 6e 61 74   ...int destinat
13d0: 69 6f 6e 59 5f 5b 5d 20 3d 20 7b 36 31 36 36 2c  ionY_[] = {6166,
13e0: 35 33 2c 35 39 38 30 2c 34 34 39 39 2c 34 31 32  53,5980,4499,412
13f0: 2c 39 30 37 34 2c 38 31 39 30 2c 38 34 37 2c 36  ,9074,8190,847,6
1400: 35 30 2c 39 31 35 38 2c 39 31 31 36 2c 34 33 39  50,9158,9116,439
1410: 36 7d 3b 0d 0a 09 20 20 76 65 63 74 6f 72 20 3c  6};...  vector <
1420: 69 6e 74 3e 20 64 65 73 74 69 6e 61 74 69 6f 6e  int> destination
1430: 59 28 64 65 73 74 69 6e 61 74 69 6f 6e 59 5f 2c  Y(destinationY_,
1440: 20 64 65 73 74 69 6e 61 74 69 6f 6e 59 5f 2b 73   destinationY_+s
1450: 69 7a 65 6f 66 28 64 65 73 74 69 6e 61 74 69 6f  izeof(destinatio
1460: 6e 59 5f 29 2f 73 69 7a 65 6f 66 28 2a 64 65 73  nY_)/sizeof(*des
1470: 74 69 6e 61 74 69 6f 6e 59 5f 29 29 3b 20 0d 0a  tinationY_)); ..
1480: 09 64 6f 75 62 6c 65 20 5f 20 3d 20 32 36 32 32  .double _ = 2622
1490: 2e 35 38 32 36 39 36 35 30 33 35 38 32 3b 20 0d  .582696503582; .
14a0: 0a 45 4e 44 0d 0a 43 41 53 45 28 35 29 0d 0a 69  .END..CASE(5)..i
14b0: 6e 74 20 70 72 69 6e 63 65 58 5f 5b 5d 20 3d 20  nt princeX_[] = 
14c0: 7b 30 2c 31 2c 32 2c 33 2c 34 2c 35 2c 36 2c 37  {0,1,2,3,4,5,6,7
14d0: 2c 38 2c 39 2c 30 2c 31 2c 32 2c 33 2c 34 2c 35  ,8,9,0,1,2,3,4,5
14e0: 2c 36 2c 37 2c 38 2c 39 2c 30 2c 31 2c 32 2c 33  ,6,7,8,9,0,1,2,3
14f0: 2c 34 2c 35 2c 36 2c 37 2c 38 2c 39 2c 30 2c 31  ,4,5,6,7,8,9,0,1
1500: 2c 32 2c 33 2c 34 2c 35 2c 36 2c 37 2c 38 2c 39  ,2,3,4,5,6,7,8,9
1510: 2c 30 2c 31 2c 32 2c 33 2c 34 2c 35 2c 36 2c 37  ,0,1,2,3,4,5,6,7
1520: 2c 38 2c 39 7d 3b 0d 0a 09 20 20 76 65 63 74 6f  ,8,9};...  vecto
1530: 72 20 3c 69 6e 74 3e 20 70 72 69 6e 63 65 58 28  r <int> princeX(
1540: 70 72 69 6e 63 65 58 5f 2c 20 70 72 69 6e 63 65  princeX_, prince
1550: 58 5f 2b 73 69 7a 65 6f 66 28 70 72 69 6e 63 65  X_+sizeof(prince
1560: 58 5f 29 2f 73 69 7a 65 6f 66 28 2a 70 72 69 6e  X_)/sizeof(*prin
1570: 63 65 58 5f 29 29 3b 20 0d 0a 09 69 6e 74 20 70  ceX_)); ...int p
1580: 72 69 6e 63 65 59 5f 5b 5d 20 3d 20 7b 30 2c 31  rinceY_[] = {0,1
1590: 2c 32 2c 33 2c 34 2c 35 2c 36 2c 37 2c 38 2c 39  ,2,3,4,5,6,7,8,9
15a0: 2c 30 2c 31 2c 32 2c 33 2c 34 2c 35 2c 36 2c 37  ,0,1,2,3,4,5,6,7
15b0: 2c 38 2c 39 2c 30 2c 31 2c 32 2c 33 2c 34 2c 35  ,8,9,0,1,2,3,4,5
15c0: 2c 36 2c 37 2c 38 2c 39 2c 30 2c 31 2c 32 2c 33  ,6,7,8,9,0,1,2,3
15d0: 2c 34 2c 35 2c 36 2c 37 2c 38 2c 39 2c 30 2c 31  ,4,5,6,7,8,9,0,1
15e0: 2c 32 2c 33 2c 34 2c 35 2c 36 2c 37 2c 38 2c 39  ,2,3,4,5,6,7,8,9
15f0: 7d 3b 0d 0a 09 20 20 76 65 63 74 6f 72 20 3c 69  };...  vector <i
1600: 6e 74 3e 20 70 72 69 6e 63 65 59 28 70 72 69 6e  nt> princeY(prin
1610: 63 65 59 5f 2c 20 70 72 69 6e 63 65 59 5f 2b 73  ceY_, princeY_+s
1620: 69 7a 65 6f 66 28 70 72 69 6e 63 65 59 5f 29 2f  izeof(princeY_)/
1630: 73 69 7a 65 6f 66 28 2a 70 72 69 6e 63 65 59 5f  sizeof(*princeY_
1640: 29 29 3b 20 0d 0a 09 69 6e 74 20 64 65 73 74 69  )); ...int desti
1650: 6e 61 74 69 6f 6e 58 5f 5b 5d 20 3d 20 7b 30 2c  nationX_[] = {0,
1660: 31 2c 32 2c 33 2c 34 2c 35 2c 36 2c 37 2c 38 2c  1,2,3,4,5,6,7,8,
1670: 39 2c 30 2c 31 2c 32 2c 33 2c 34 2c 35 2c 36 2c  9,0,1,2,3,4,5,6,
1680: 37 2c 38 2c 39 2c 30 2c 31 2c 32 2c 33 2c 34 2c  7,8,9,0,1,2,3,4,
1690: 35 2c 36 2c 37 2c 38 2c 39 2c 30 2c 31 2c 32 2c  5,6,7,8,9,0,1,2,
16a0: 33 2c 34 2c 35 2c 36 2c 37 2c 38 2c 39 2c 30 2c  3,4,5,6,7,8,9,0,
16b0: 31 2c 32 2c 33 2c 34 2c 35 2c 36 2c 37 2c 38 2c  1,2,3,4,5,6,7,8,
16c0: 39 7d 3b 0d 0a 09 20 20 76 65 63 74 6f 72 20 3c  9};...  vector <
16d0: 69 6e 74 3e 20 64 65 73 74 69 6e 61 74 69 6f 6e  int> destination
16e0: 58 28 64 65 73 74 69 6e 61 74 69 6f 6e 58 5f 2c  X(destinationX_,
16f0: 20 64 65 73 74 69 6e 61 74 69 6f 6e 58 5f 2b 73   destinationX_+s
1700: 69 7a 65 6f 66 28 64 65 73 74 69 6e 61 74 69 6f  izeof(destinatio
1710: 6e 58 5f 29 2f 73 69 7a 65 6f 66 28 2a 64 65 73  nX_)/sizeof(*des
1720: 74 69 6e 61 74 69 6f 6e 58 5f 29 29 3b 20 0d 0a  tinationX_)); ..
1730: 09 69 6e 74 20 64 65 73 74 69 6e 61 74 69 6f 6e  .int destination
1740: 59 5f 5b 5d 20 3d 20 7b 30 2c 31 2c 32 2c 33 2c  Y_[] = {0,1,2,3,
1750: 34 2c 35 2c 36 2c 37 2c 38 2c 39 2c 30 2c 31 2c  4,5,6,7,8,9,0,1,
1760: 32 2c 33 2c 34 2c 35 2c 36 2c 37 2c 38 2c 39 2c  2,3,4,5,6,7,8,9,
1770: 30 2c 31 2c 32 2c 33 2c 34 2c 35 2c 36 2c 37 2c  0,1,2,3,4,5,6,7,
1780: 38 2c 39 2c 30 2c 31 2c 32 2c 33 2c 34 2c 35 2c  8,9,0,1,2,3,4,5,
1790: 36 2c 37 2c 38 2c 39 2c 30 2c 31 2c 32 2c 33 2c  6,7,8,9,0,1,2,3,
17a0: 34 2c 35 2c 36 2c 37 2c 38 2c 39 7d 3b 0d 0a 09  4,5,6,7,8,9};...
17b0: 20 20 76 65 63 74 6f 72 20 3c 69 6e 74 3e 20 64    vector <int> d
17c0: 65 73 74 69 6e 61 74 69 6f 6e 59 28 64 65 73 74  estinationY(dest
17d0: 69 6e 61 74 69 6f 6e 59 5f 2c 20 64 65 73 74 69  inationY_, desti
17e0: 6e 61 74 69 6f 6e 59 5f 2b 73 69 7a 65 6f 66 28  nationY_+sizeof(
17f0: 64 65 73 74 69 6e 61 74 69 6f 6e 59 5f 29 2f 73  destinationY_)/s
1800: 69 7a 65 6f 66 28 2a 64 65 73 74 69 6e 61 74 69  izeof(*destinati
1810: 6f 6e 59 5f 29 29 3b 20 0d 0a 09 64 6f 75 62 6c  onY_)); ...doubl
1820: 65 20 5f 20 3d 20 30 3b 20 0d 0a 45 4e 44 0d 0a  e _ = 0; ..END..
1830: 2f 2a 0d 0a 43 41 53 45 28 36 29 0d 0a 09 69 6e  /*..CASE(6)...in
1840: 74 20 70 72 69 6e 63 65 58 5f 5b 5d 20 3d 20 3b  t princeX_[] = ;
1850: 0d 0a 09 20 20 76 65 63 74 6f 72 20 3c 69 6e 74  ...  vector <int
1860: 3e 20 70 72 69 6e 63 65 58 28 70 72 69 6e 63 65  > princeX(prince
1870: 58 5f 2c 20 70 72 69 6e 63 65 58 5f 2b 73 69 7a  X_, princeX_+siz
1880: 65 6f 66 28 70 72 69 6e 63 65 58 5f 29 2f 73 69  eof(princeX_)/si
1890: 7a 65 6f 66 28 2a 70 72 69 6e 63 65 58 5f 29 29  zeof(*princeX_))
18a0: 3b 20 0d 0a 09 69 6e 74 20 70 72 69 6e 63 65 59  ; ...int princeY
18b0: 5f 5b 5d 20 3d 20 3b 0d 0a 09 20 20 76 65 63 74  _[] = ;...  vect
18c0: 6f 72 20 3c 69 6e 74 3e 20 70 72 69 6e 63 65 59  or <int> princeY
18d0: 28 70 72 69 6e 63 65 59 5f 2c 20 70 72 69 6e 63  (princeY_, princ
18e0: 65 59 5f 2b 73 69 7a 65 6f 66 28 70 72 69 6e 63  eY_+sizeof(princ
18f0: 65 59 5f 29 2f 73 69 7a 65 6f 66 28 2a 70 72 69  eY_)/sizeof(*pri
1900: 6e 63 65 59 5f 29 29 3b 20 0d 0a 09 69 6e 74 20  nceY_)); ...int 
1910: 64 65 73 74 69 6e 61 74 69 6f 6e 58 5f 5b 5d 20  destinationX_[] 
1920: 3d 20 3b 0d 0a 09 20 20 76 65 63 74 6f 72 20 3c  = ;...  vector <
1930: 69 6e 74 3e 20 64 65 73 74 69 6e 61 74 69 6f 6e  int> destination
1940: 58 28 64 65 73 74 69 6e 61 74 69 6f 6e 58 5f 2c  X(destinationX_,
1950: 20 64 65 73 74 69 6e 61 74 69 6f 6e 58 5f 2b 73   destinationX_+s
1960: 69 7a 65 6f 66 28 64 65 73 74 69 6e 61 74 69 6f  izeof(destinatio
1970: 6e 58 5f 29 2f 73 69 7a 65 6f 66 28 2a 64 65 73  nX_)/sizeof(*des
1980: 74 69 6e 61 74 69 6f 6e 58 5f 29 29 3b 20 0d 0a  tinationX_)); ..
1990: 09 69 6e 74 20 64 65 73 74 69 6e 61 74 69 6f 6e  .int destination
19a0: 59 5f 5b 5d 20 3d 20 3b 0d 0a 09 20 20 76 65 63  Y_[] = ;...  vec
19b0: 74 6f 72 20 3c 69 6e 74 3e 20 64 65 73 74 69 6e  tor <int> destin
19c0: 61 74 69 6f 6e 59 28 64 65 73 74 69 6e 61 74 69  ationY(destinati
19d0: 6f 6e 59 5f 2c 20 64 65 73 74 69 6e 61 74 69 6f  onY_, destinatio
19e0: 6e 59 5f 2b 73 69 7a 65 6f 66 28 64 65 73 74 69  nY_+sizeof(desti
19f0: 6e 61 74 69 6f 6e 59 5f 29 2f 73 69 7a 65 6f 66  nationY_)/sizeof
1a00: 28 2a 64 65 73 74 69 6e 61 74 69 6f 6e 59 5f 29  (*destinationY_)
1a10: 29 3b 20 0d 0a 09 64 6f 75 62 6c 65 20 5f 20 3d  ); ...double _ =
1a20: 20 3b 20 0d 0a 45 4e 44 0d 0a 2a 2f 0d 0a 7d 0d   ; ..END..*/..}.
1a30: 0a 2f 2f 20 45 4e 44 20 43 55 54 20 48 45 52 45  .// END CUT HERE
1a40: 0d 0a                                            ..