tanchukw

Untitled

Aug 10th, 2015
191
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.60 KB | None | 0 0
  1. class Solution {
  2. public:
  3.     int compareVersion(string version1, string version2) {
  4.         int sz1 = version1.size(), sz2 = version2.size(), i1 = 0, i2 = 0, sum1, sum2;
  5.         while (i1 < sz1 || i2 < sz2)
  6.         {
  7.             sum1 = sum2 = 0;
  8.             while (i1 < sz1 && version1[i1] != '.')
  9.             {
  10.                 sum1 *= 10;
  11.                 sum1 += version1[i1] - '0';
  12.                 ++i1;
  13.             }
  14.  
  15.             while (i2 < sz2 && version2[i2] != '.')
  16.             {
  17.                 sum2 *= 10;
  18.                 sum2 += version2[i2] - '0';
  19.                 ++i2;
  20.             }
  21.             if (sum1 > sum2)
  22.                 return 1;
  23.             if (sum2 > sum1)
  24.                 return -1;
  25.             if (i1 < sz1)
  26.                 ++i1;
  27.             if (i2 < sz2)
  28.                 ++i2;
  29.         }
  30.         return 0;
  31.     }
  32. };
Advertisement
Add Comment
Please, Sign In to add comment