// gcc -O3 -o bound bound.c #include #include #include #include int a, b, c, d, x; int main(int ac, char **av){ for(x = 0, a = 1; a < 100; a++) for(b = 1; b < 100; b++) for(c = 1; c < 100; c++) if(x < a+b+c+d && (a+b < 9 || 3*a <= b) && (c+b < 9 || 3*c <= b) && (a+c+b < 9 || 3*b <= a+c)) x = a+b+c+d; printf("bound for ABACBC = %d\n", 2*x); for(x = 0, a = 1; a < 100; a++) for(b = 1; b < 100; b++) for(c = 1; c < 100; c++) if(x < a+b+c+d && (a+b+c < 9 || 3*a <= b+c) && (a+c < 9 || 3*c <= a) && (a+b+2*c < 9 || 3*b <= a+2*c)) x = a+b+c+d; printf("bound for ABCACB = %d\n", 2*x); for(x = 0, a = 1; a < 100; a++) for(b = 1; b < 100; b++) for(c = 1; c < 100; c++) for(d = 1; d < 100; d++) if(x < a+b+c+d && (a+b < 9 || 3*a <= b) && (a+b+c < 9 || 3*b <= a+c) && (b+c+d < 9 || 3*c <= b+d) && (c+d < 9 || 3*d <= c)) x = a+b+c+d; printf("bound for ABACBDCD = %d\n", 2*x); for(x = 0, a = 1; a < 100; a++) for(b = 1; b < 100; b++) for(c = 1; c < 100; c++) for(d = 1; d < 100; d++) if(x < a+b+c+d && (a+b < 9 || 3*a <= b) && (a+b+c+d < 9 || 3*b <= a+c+d) && (c+b+2*d < 9 || 3*c <= b+2*d) && (b+d < 9 || 3*d <= b)) x = a+b+c+d; printf("bound for ABACDBDC = %d\n", 2*x); for(x = 0, a = 1; a < 100; a++) for(b = 1; b < 100; b++) for(c = 1; c < 100; c++) for(d = 1; d < 100; d++) if(x < a+b+c+d && (a+b < 9 || 3*a <= b) && (a+b+2*c+d < 9 || 3*b <= a+2*c+d) && (c+d < 9 || 3*c <= d) && (b+c+d < 9 || 3*d <= b+c)) x = a+b+c+d; printf("bound for ABACDCBD = %d\n", 2*x); for(x = 0, a = 1; a < 100; a++) for(b = 1; b < 100; b++) for(c = 1; c < 100; c++) for(d = 1; d < 100; d++) if(x < a+b+c+d && (a+b+c < 9 || 3*a <= b+c) && (a+b+c+d < 9 || 3*b <= a+c+d) && (a+b+c+2*d < 9 || 3*c <= a+b+2*d) && (b+d < 9 || 3*d <= b)) x = a+b+c+d; printf("bound for ABCADBDC = %d\n", 2*x); for(x = 0, a = 1; a < 100; a++) for(b = 1; b < 100; b++) for(c = 1; c < 100; c++) for(d = 1; d < 100; d++) if(x < a+b+c+d && (a+b+c < 9 || 3*a <= b+c) && (a+b+2*c+d < 9 || 3*b <= a+2*c+d) && (a+c+d < 9 || 3*c <= a+d) && (b+c+d < 9 || 3*d <= b+c)) x = a+b+c+d; printf("bound for ABCADCBD = %d\n", 2*x); for(x = 0, a = 1; a < 100; a++) for(b = 1; b < 100; b++) for(c = 1; c < 100; c++) for(d = 1; d < 100; d++) if(x < a+b+c+d && (a+b+c < 9 || 3*a <= b+c) && (a+b+2*c+2*d < 9 || 3*b <= a+2*c+2*d) && (a+c+d < 9 || 3*c <= a+d) && (c+d < 9 || 3*d <= c)) x = a+b+c+d; printf("bound for ABCADCDB = %d\n", 2*x); for(x = 0, a = 1; a < 100; a++) for(b = 1; b < 100; b++) for(c = 1; c < 100; c++) for(d = 1; d < 100; d++) if(x < a+b+c+d && (a+2*b+c+d < 9 || 3*a <= 2*b+c+d) && (b+c < 9 || 3*b <= c) && (a+b+c+2*d < 9 || 3*c <= a+b+2*d) && (a+d < 9 || 3*d <= a)) x = a+b+c+d; printf("bound for ABCBDADC = %d\n", 2*x); for(x = 0, a = 1; a < 100; a++) for(b = 1; b < 100; b++) for(c = 1; c < 100; c++) for(d = 1; d < 100; d++) if(x < a+b+c+d && (a+b+c+d < 9 || 3*a <= b+c+d) && (a+b+2*c+d < 9 || 3*b <= a+2*c+d) && (a+c+d < 9 || 3*c <= a+d) && (a+b+c+d < 9 || 3*d <= a+b+c)) x = a+b+c+d; printf("bound for ABCDACBD = %d\n", 2*x); for(x = 0, a = 1; a < 100; a++) for(b = 1; b < 100; b++) for(c = 1; c < 100; c++) for(d = 1; d < 100; d++) if(x < a+b+c+d && (a+b+c+d < 9 || 3*a <= b+c+d) && (a+b+2*c+2*d < 9 || 3*b <= a+2*c+2*d) && (a+c+2*d < 9 || 3*c <= a+2*d) && (a+d < 9 || 3*d <= a)) x = a+b+c+d; printf("bound for ABCDADCB = %d\n", 2*x); for(x = 0, a = 1; a < 100; a++) for(b = 1; b < 100; b++) for(c = 1; c < 100; c++) for(d = 1; d < 100; d++) if(x < a+b+c+d && (a+2*b+c+d < 9 || 3*a <= 2*b+c+d) && (b+c+d < 9 || 3*b <= c+d) && (a+b+c+2*d < 9 || 3*c <= a+b+2*d) && (a+b+d < 9 || 3*d <= a+b)) x = a+b+c+d; printf("bound for ABCDBADC = %d\n", 2*x); for(x = 0, a = 1; a < 100; a++) for(b = 1; b < 100; b++) for(c = 1; c < 100; c++) for(d = 1; d < 100; d++) if(x < a+b+c+d && (a+2*b+c+2*d < 9 || 3*a <= 2*b+c+2*d) && (b+c+d < 9 || 3*b <= c+d) && (a+b+c+2*d < 9 || 3*c <= a+b+2*d) && (b+d < 9 || 3*d <= b)) x = a+b+c+d; printf("bound for ABCDBDAC = %d\n", 2*x); }