# include using namespace std; const long long maxn = 505; long long a[maxn][maxn],b[maxn][maxn],r[maxn],c[maxn],n,m,P,z[maxn][maxn]; long long ANS = 0; long long ANS2; vector > > answers,answers2; mt19937 rand_Gen(54543654); const clock_t begin_time = clock(); float Time = 1.8; long long delta = 0; void read() { cin>>n>>m>>P; long long i,j; for(i=1;i<=n;i++) cin>>r[i]; for(i=1;i<=m;i++) cin>>c[i]; for(i=1;i<=n;i++) { for(j=1;j<=m;j++) { cin>>a[i][j]; z[i][j] = a[i][j]; } } for(i=1;i<=n;i++) for(j=1;j<=m;j++) cin>>b[i][j]; } void print() { cout<"<"<=every||iterations>=maxitr) { successful = 0; iterations = 0; cases = 1-cases; } long long i; iterations++; if(cases==0) { long long x = rand_Gen()%n+1; long long bestans = ANS; long long idx = 0; for(i=1;imaxrow) { maxrow = sum; idx = i; } } if(idx==-1)return 0; prohibr[idx] = 1; long long x = idx; long long bestans = ANS; idx = 0; for(i=1;imaxcol) { maxcol = sum; idx = j; } } if(idx==-1)return 0; prohibc[idx] = 1; long long x = idx; long long bestans = ANS; idx = 0; for(i=1;imaxs) { maxs = a[i][j]; idx = i; idy = j; } } } long long mins = 1e9; long long tx=-1, ty; for(i=1;i<=n;i++) { for(j=1;j<=m;j++) { if(prohibc[j]||prohibr[i])continue; if(b[i][j]maxs) { maxs = a[i][j]; idx = i; idy = j; } } } long long mins = 1e9; long long tx=-1, ty; for(i=1;i<=n;i++) { for(j=1;j<=m;j++) { if(prohibc[j]||prohibr[i])continue; if(b[i][j]=n/10) { br = 0; cases - 1-cases; } if(((cases==0) ? rotatemaxrow() : rotatemaxcol()) == 0) {cases = 1-cases; br = 0;} } copyresult(); //print(); //cout<=n/10) { br = 0; cases - 1-cases; } if(((cases==0) ? rotatemaxrow() : rotatemaxcol()) == 0) {cases = 1-cases; br = 0;} } // PRINT(); // cout<