From 6c76f47cdec80750ed7d6af4cf384ec48bc0fa61 Mon Sep 17 00:00:00 2001 From: nk365yf Date: Sun, 19 Oct 2025 23:15:53 +0200 Subject: [PATCH] check --- a1/prog | Bin 0 -> 16272 bytes a1/program.c | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 60 insertions(+) create mode 100755 a1/prog create mode 100644 a1/program.c diff --git a/a1/prog b/a1/prog new file mode 100755 index 0000000000000000000000000000000000000000..98ec133a2df112a1c585fb7d2a2ff93397cc9f26 GIT binary patch literal 16272 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 literal 0 HcmV?d00001 diff --git a/a1/program.c b/a1/program.c new file mode 100644 index 0000000..c31ca05 --- /dev/null +++ b/a1/program.c @@ -0,0 +1,60 @@ +#include +#include +#include + +#define MAX_SIZE 1000 + +bool is_valid_brackets(const char* s, int* err) { + char stack[MAX_SIZE]; + int top = -1; + + for (int i = 0; s[i] != '\0'; i++) { + char c = s[i]; + if (c == '(' || c == '[' || c == '{') { + if (top < MAX_SIZE - 1) { + stack[++top] = c; + } else { + *err= i + 1; + return false; + } + } + else if (c == ')' || c == ']' || c == '}') { + if (top == -1) { + *err= i + 1; + return false; + } + char last = stack[top--]; + if ((c == ')' && last != '(') || + (c == ']' && last != '[') || + (c == '}' && last != '{')) { + *err + = i + 1; + return false; + } + } + } + if (top != -1) { + *err = strlen(s) + 1; + return false; + } + return true; +} + +int main() { + char input[MAX_SIZE]; + + if (fgets(input, MAX_SIZE, stdin) != NULL) { + input[strcspn(input, "\n")] = '\0'; + + int err = 0; + if (is_valid_brackets(input, &err)) { + printf("True\n"); + } else { + printf("False at position %d\n", err +); + } + } + + return 0; +} +