143165576
 1919020031
 1204252996
 210637432
 724264821
 1741
 619489590
 1199537418
 1075765759
 747976826
 638486017
 58438190
 1285316221
 186925426
 1180540990
 833393692
 1818960378
 2000000000
 0
 1309028227
 514714359
 624205168
 1795248373
 643201595
 1304312649

14 3 3 4 5 2 4 4 2 4 6 4 3 4 5 3 5 4 1 5 3 4 5 5 8
#include <bits/stdc++.h>
using namespace std;
long long a;
int getans(int x) {
  switch (x) {
    case 0:
      return 1;
    case 1:
      return 0;
    case 2:
      return 0;
    case 3:
      return 0;
    case 4:
      return 1;
    case 5:
      return 0;
    case 6:
      return 1;
    case 7:
      return 0;
    case 8:
      return 2;
    case 9:
      return 1;
    case 10:
      return 1;
    case 11:
      return 2;
    case 12:
      return 0;
    case 13:
      return 0;
    case 14:
      return 0;
    case 15:
      return 0;
  }
}
int main() {
  cin >> a;
  int ans = 0;
  if (a == 0) ans = getans(0);
  while (a) ans += getans(a % 16), a /= 16;
  cout << ans << endl;
  return 0;
}
