From 92eca2b3b8c1a7105e6882a3313cb5d1f3e70527 Mon Sep 17 00:00:00 2001 From: Maxime Vorwerk Date: Mon, 4 Nov 2024 13:56:49 +0100 Subject: [PATCH] two-sum --- two-sum/flag | Bin 0 -> 15880 bytes two-sum/flag.c | 51 +++++++++++++++++++++++++++++++++++++++++++++++ two-sum/flag.txt | 1 + 3 files changed, 52 insertions(+) create mode 100755 two-sum/flag create mode 100644 two-sum/flag.c create mode 100644 two-sum/flag.txt diff --git a/two-sum/flag b/two-sum/flag new file mode 100755 index 0000000000000000000000000000000000000000..1202f4485e370ec6ae330c761379ac33637240c1 GIT binary patch literal 15880 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 Oy+JvA%H!Y>#XkYLjbFO} literal 0 HcmV?d00001 diff --git a/two-sum/flag.c b/two-sum/flag.c new file mode 100644 index 0000000..d077dd2 --- /dev/null +++ b/two-sum/flag.c @@ -0,0 +1,51 @@ +#include +#include + +static int addIntOvf(int result, int a, int b) { + result = a + b; + if(a > 0 && b > 0 && result < 0) + return -1; + if(a < 0 && b < 0 && result > 0) + return -1; + return 0; +} + +int main() { + int num1, num2, sum; + FILE *flag; + char c; + + printf("n1 > n1 + n2 OR n2 > n1 + n2 \n"); + fflush(stdout); + printf("What two positive numbers can make this possible: \n"); + fflush(stdout); + + if (scanf("%d", &num1) && scanf("%d", &num2)) { + printf("You entered %d and %d\n", num1, num2); + fflush(stdout); + sum = num1 + num2; + if (addIntOvf(sum, num1, num2) == 0) { + printf("No overflow\n"); + fflush(stdout); + exit(0); + } else if (addIntOvf(sum, num1, num2) == -1) { + printf("You have an integer overflow\n"); + fflush(stdout); + } + + if (num1 > 0 || num2 > 0) { + flag = fopen("flag.txt","r"); + if(flag == NULL){ + printf("flag not found: please run this on the server\n"); + fflush(stdout); + exit(0); + } + char buf[60]; + fgets(buf, 59, flag); + printf("YOUR FLAG IS: %s\n", buf); + fflush(stdout); + exit(0); + } + } + return 0; +} diff --git a/two-sum/flag.txt b/two-sum/flag.txt new file mode 100644 index 0000000..0c832bb --- /dev/null +++ b/two-sum/flag.txt @@ -0,0 +1 @@ +flag{test}