leetcode

Solution to some Leetcode problems written in C++
git clone git://git.dimitrijedobrota.com/leetcode.git
Log | Files | Refs | README | LICENSE

1664.cpp (581B)


0 class Solution { 1 public: 2 int waysToMakeFair(const vector<int> &nums) { 3 const int n = nums.size(); 4 int sodd = 0, seven = 0; 5 for (int i = n - 1; i >= 0; i--) 6 (i % 2 ? sodd : seven) += nums[i]; 7 8 int res = 0; 9 for (int i = 0, odd = 0, even = 0; i < n; i++) { 10 const int codd = odd + seven - even + (i % 2 ? nums[i] : 0); 11 const int ceven = even + sodd - odd + (i % 2 ? 0 : nums[i]); 12 if (codd == ceven) res++; 13 (i % 2 ? odd : even) += nums[i]; 14 } 15 16 return res; 17 } 18 };