leetcodeSolution to some Leetcode problems written in C++ |
git clone git://git.dimitrijedobrota.com/leetcode.git |
Log | Files | Refs | README | LICENSE |
2222.cpp (571B)
0 class Solution { 1 public: 2 long long numberOfWays(const string &s) const { 3 static int count[100001]; 4 const int n = size(s); 5 int crnt[] = {0, 0}; 6 long long res = 0; 7 8 for (int i = n - 1; i >= 0; i--) { 9 const int idx = s[i] - '0'; 10 count[i] = crnt[!idx]; 11 crnt[idx]++; 12 } 13 14 crnt[0] = crnt[1] = 0; 15 for (int i = 0; i < n; i++) { 16 const int idx = s[i] - '0'; 17 res += count[i] * crnt[!idx]; 18 crnt[idx]++; 19 } 20 21 return res; 22 } 23 };