class Solution
{
public:
    int compareVersion(string version1, string version2)
    {
        int n1 = version1.size(), n2 = version2.size();
        int i = 0, j = 0, d1 = 0, d2 = 0;
        string v1, v2;
        while (i < n1 || j < n2)
        {
            while (i < n1 && version1[i] != '.')
            {
                v1 += (version1[i++]);
            }
            d1 = atoi(v1.c_str());
            while (j < n2 && version2[j] != '.')
            {
                v2 += (version2[j++]);
            }
            d2 = atoi(v2.c_str());
            if (d1 > d2)
                return 1;
            else if (d1 < d2)
                return -1;
            v1.clear();
            v2.clear();
            ++i;
            ++j;
        }
        return 0;
    }
};
