@Mathematica
flipBrakets[str_]:=str//
FixedPoint[StringReplace[#,"()"->""]&,#]&//
StringReplace[#,{"(("->"1","))"->"1"}]&//
FixedPoint[StringReplace[#,{")1"->"1)","(1"->"1("}]&,#]&//
StringReplace[#,")("->"2"]&//
If[Or[#=="("\[Or]#==")",
-1,
#//
Characters//
Map[ToExpression,#]&//
Total]&;
In[1] := flipBrakets["())((())()))()(((()))()((((((((()()(()))"]
Out[1] = 5
QE1hdGhlbWF0aWNhCgpmbGlwQnJha2V0c1tzdHJfXTo9c3RyLy8KCUZpeGVkUG9pbnRbU3RyaW5nUmVwbGFjZVsjLCIoKSItPiIiXSYsI10mLy8KCVN0cmluZ1JlcGxhY2VbIyx7IigoIi0+IjEiLCIpKSItPiIxIn1dJi8vCglGaXhlZFBvaW50W1N0cmluZ1JlcGxhY2VbIyx7IikxIi0+IjEpIiwiKDEiLT4iMSgifV0mLCNdJi8vCglTdHJpbmdSZXBsYWNlWyMsIikoIi0+IjIiXSYvLwoJSWZbT3JbIz09IigiXFtPcl0jPT0iKSIsCgkJLTEsCgkJIy8vCgkJCUNoYXJhY3RlcnMvLwoJCQlNYXBbVG9FeHByZXNzaW9uLCNdJi8vCgkJCVRvdGFsXSY7CgpJblsxXSA6PSBmbGlwQnJha2V0c1siKCkpKCgoKSkoKSkpKCkoKCgoKSkpKCkoKCgoKCgoKCgpKCkoKCkpKSJdCk91dFsxXSA9IDUK