Submission #1344445


Source Code Expand

#include <stdio.h>

int main() {
  int N;
  char str[101] = {};
  scanf("%d", &N);
  scanf("%s", str);

  int excess_close = 0;
  int excess_open = 0;
  int depth = 0;

  for (int i = 0; i < N; i++) {
    if (str[i] == '(') {
      depth++;
      excess_open++;
    } else if (str[i] == ')') {
      if (depth > 0) {
	depth--;
	excess_open--;
      }
      else {
	excess_close++;
      }
    }
    //    printf("%c d %d o %d c%d\n", str[i], depth, excess_open, excess_close);
  }

  for (int i = 0; i < excess_close; i++) {
    printf("(");
  }
  printf("%s", str);
  for (int i = 0; i < excess_open; i++) {
    printf(")");
  }
  printf("\n");

  return 0;
}

Submission Info

Submission Time
Task D - Insertion
User biochemfan
Language C++14 (GCC 5.4.1)
Score 400
Code Size 700 Byte
Status AC
Exec Time 1 ms
Memory 128 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:6:18: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d", &N);
                  ^
./Main.cpp:7:19: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   scanf("%s", str);
                   ^

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 400 / 400
Status
AC × 3
AC × 12
Set Name Test Cases
Sample s1.txt, s2.txt, s3.txt
All in1.txt, in2.txt, in3.txt, in4.txt, in5.txt, in6.txt, in7.txt, in8.txt, in9.txt, s1.txt, s2.txt, s3.txt
Case Name Status Exec Time Memory
in1.txt AC 1 ms 128 KB
in2.txt AC 1 ms 128 KB
in3.txt AC 1 ms 128 KB
in4.txt AC 1 ms 128 KB
in5.txt AC 1 ms 128 KB
in6.txt AC 1 ms 128 KB
in7.txt AC 1 ms 128 KB
in8.txt AC 1 ms 128 KB
in9.txt AC 1 ms 128 KB
s1.txt AC 1 ms 128 KB
s2.txt AC 1 ms 128 KB
s3.txt AC 1 ms 128 KB