#include #include #include using namespace std; typedef array pt; short in(pt a, pt b) { return a[0]*b[0]+a[1]*b[1]+a[2]*b[2]; } pt operator-(pt a, pt b) {return {a[0]-b[0],a[1]-b[1],a[2]-b[2]};} vector B,A,P,C; const int N = 22; short nB[N][2*N][2*N][N*N*6] = {}; short nC[N][2*N][2*N][N*N*6] = {}; short& g(auto& arr, int i, int j, int k, int in) { if(i<0) i=-i,j=-j,k=-k, in=-in; return arr[i][j+N-1][k+N-1][in+3*N*N]; } int main() { int n; cin >> n; for(int i=0;i> tmp; for(int j=0;j> s; for(int k=0;k