#include #define MIN2(a,b) ((a) < (b) ? (a) : (b)) #define MAX2(a,b) ((a) > (b) ? (a) : (b)) int main() { int N,Ni; scanf("%d", &N); for( Ni = 0; Ni < N; Ni++ ) { int height; scanf("%d", &height); int * front = new int[height]; int * right = new int[height]; for(int i = 0; i < height; i++) scanf("%d", &front[i]); for(int i = 0; i < height; i++) scanf("%d", &right[i]); int minimal = 0; int maximal = 0; /** int ** matrix = new int* [height]; for(int i = 0; i < height; i++) { matrix[i] = new int[height]; for(int j = 0; j < height; j++) { if(front[i] == right[j]) matrix[i][j] = front[i]; else matrix[i][j] = 0; } } **/ int sum1 = 0, sum2 = 0; for(int i = 0; i < height; i++) { sum1 += front[i]; sum2 += right[i]; } minimal = MAX2(sum1, sum2); for(int i = 0; i < height; i++) for(int j = 0; j < height; j++) maximal += MIN2(front[j], right[i]); printf("Minimalni budova obsahuje %d kostek, maximalni %d kostek.\n", minimal, maximal); } }