aboutsummaryrefslogtreecommitdiff
path: root/codechef/DenseBracketSequence
diff options
context:
space:
mode:
Diffstat (limited to 'codechef/DenseBracketSequence')
-rw-r--r--codechef/DenseBracketSequence/inp0
-rwxr-xr-xcodechef/DenseBracketSequence/mainbin0 -> 39024 bytes
-rw-r--r--codechef/DenseBracketSequence/main.cpp33
-rw-r--r--codechef/DenseBracketSequence/main_input0.txt9
-rw-r--r--codechef/DenseBracketSequence/main_input1.txt7
-rw-r--r--codechef/DenseBracketSequence/main_output0.txt4
-rw-r--r--codechef/DenseBracketSequence/main_output1.txt3
7 files changed, 56 insertions, 0 deletions
diff --git a/codechef/DenseBracketSequence/inp b/codechef/DenseBracketSequence/inp
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/codechef/DenseBracketSequence/inp
diff --git a/codechef/DenseBracketSequence/main b/codechef/DenseBracketSequence/main
new file mode 100755
index 0000000..4682a3d
--- /dev/null
+++ b/codechef/DenseBracketSequence/main
Binary files differ
diff --git a/codechef/DenseBracketSequence/main.cpp b/codechef/DenseBracketSequence/main.cpp
new file mode 100644
index 0000000..6785a12
--- /dev/null
+++ b/codechef/DenseBracketSequence/main.cpp
@@ -0,0 +1,33 @@
+#include <bits/stdc++.h>
+
+using namespace std;
+
+int main() {
+ ios_base::sync_with_stdio(false);
+ cin.tie(NULL);
+ int tt;
+ cin >> tt;
+ while (tt--) {
+ int n;
+ cin >> n;
+ string s;
+ cin >> s;
+ int count = 0;
+ stack<char> st;
+ st.push(s[0]);
+ for(int i = 1; i < n; i++) {
+ if(s[i] == '(') {
+ st.push('(');
+ }
+ if(s[i] == ')') {
+ if(st.top() == '(' && !st.empty()){
+ st.pop();
+ count++;
+ }
+ }
+ }
+ cout << count << endl;
+ }
+}
+
+
diff --git a/codechef/DenseBracketSequence/main_input0.txt b/codechef/DenseBracketSequence/main_input0.txt
new file mode 100644
index 0000000..c93dd40
--- /dev/null
+++ b/codechef/DenseBracketSequence/main_input0.txt
@@ -0,0 +1,9 @@
+4
+8
+()(())()
+6
+((()))
+10
+()()()()()
+8
+((()))()
diff --git a/codechef/DenseBracketSequence/main_input1.txt b/codechef/DenseBracketSequence/main_input1.txt
new file mode 100644
index 0000000..017efbb
--- /dev/null
+++ b/codechef/DenseBracketSequence/main_input1.txt
@@ -0,0 +1,7 @@
+3
+5
+(()))
+5
+()())
+7
+((()))) \ No newline at end of file
diff --git a/codechef/DenseBracketSequence/main_output0.txt b/codechef/DenseBracketSequence/main_output0.txt
new file mode 100644
index 0000000..c49baff
--- /dev/null
+++ b/codechef/DenseBracketSequence/main_output0.txt
@@ -0,0 +1,4 @@
+2
+0
+4
+2
diff --git a/codechef/DenseBracketSequence/main_output1.txt b/codechef/DenseBracketSequence/main_output1.txt
new file mode 100644
index 0000000..ae7dd0b
--- /dev/null
+++ b/codechef/DenseBracketSequence/main_output1.txt
@@ -0,0 +1,3 @@
+1
+1
+1 \ No newline at end of file