Advertisement
greannmhar

строки 10

Mar 23rd, 2024
54
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.10 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <ctype.h>
  3. #include <string.h>
  4.  
  5. int check(const char *s) {
  6.     const int n = strlen(s);
  7.    
  8.     int counter = 0;
  9.     for (int i = 0; i < n; ++i) {
  10.         if (s[i] == '(') {
  11.             counter ++;
  12.         }
  13.         if (s[i] == ')') {
  14.             counter --;
  15.         }
  16.        
  17.         if (counter < 0)
  18.             return 0;
  19.     }
  20.    
  21.     if (counter != 0)
  22.         return 0;
  23.     return 1;
  24. }
  25.  
  26. void print_str(char* s) {
  27.     const int n = strlen(s);
  28.    
  29.     if (check(s) == 0) {
  30.         printf("check failed\n");
  31.         return;
  32.     }
  33.    
  34.     int counter = 0;
  35.     for (int i = 0; i < n; ++i) {
  36.         if (s[i] == '(') {
  37.             counter ++;
  38.             printf("%c", s[i]);
  39.             continue;
  40.         }
  41.         if (s[i] == ')') {
  42.             counter --;
  43.             printf("%c", s[i]);
  44.             continue;
  45.         }
  46.        
  47.         if (counter == 0)
  48.             printf("%c", s[i]);
  49.     }
  50. }
  51.  
  52. int main() {
  53.     char str[4001];
  54.    
  55.     printf("enter string: ");
  56.     scanf("%4001[^\n]", str);
  57.    
  58.     print_str(str);
  59.  
  60.     return 0;
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement