Simple C++ Solution
Intuition\n Describe your first thoughts on how to solve this problem. \n\n# Approach\n Describe your approach to solving the problem. \n\n# Complexity\n- Time 
# Intuition\n<!-- Describe your first thoughts on how to solve this problem. -->\n\n# Approach\n<!-- Describe your approach to solving the problem. -->\n\n# Complexity\n- Time complexity:\n<!-- Add your time complexity here, e.g. $$O(n)$$ -->\n\n- Space complexity:\n<!-- Add your space complexity here, e.g. $$O(n)$$ -->\n\n# Code\n```\nclass Solution {\npublic:\n    vector<string> res;\n    vector<string> getNums(string s){\n        vector<string> result;\n        int n=s.size();\n        if(n==1)\n        return {s};\n\n        if(s[0]!=\'0\')\n        result.push_back(s);\n\n        if(s[0]==\'0\'){\n            if(s[n-1]!=\'0\')\n            return {"0."+s.substr(1)};\n            else\n            return {};\n        }\n\n        for(int i=1;i<n;i++){\n            if(s.substr(i).back()==\'0\')\n            continue;\n\n            auto str=s.substr(0, i)+"."+s.substr(i);\n            result.push_back(str);\n        }\n\n        return result;\n\n\n    }\n    void helper(string& s){\n\n        for(int i=1;i<s.size();i++){\n            auto left=getNums(s.substr(0, i));\n            auto right=getNums(s.substr(i));\n\n            for(auto l:left){\n                for(auto r:right){\n                    res.push_back("("+l+", "+r+")");\n                }\n            }\n        }\n\n        \n\n    }\n\n    vector<string> ambiguousCoordinates(string s) {\n\n        s=s.substr(1, s.size()-2);\n        helper(s);\n        return res;\n    }\n};\n```
['C++']