#include #include #include #include #include #include #include long int longestSequence(int a,int l[]) { if(l[a]!=0) return l[a]; int u=1+2*longestSequence(a/2,l); l[a]=u; return u; // Return the length of the longest possible sequence of moves. } int main() { int n; scanf("%i", &n); int l[100000]; for(int i=0;i<100000;i++) l[i]=0; long int sum=0; l[1]=1; long int *a = malloc(sizeof(long int) * n); for (int a_i = 0; a_i < n; a_i++) { scanf("%li",&a[a_i]); // int y=0; long int result = longestSequence(a[a_i], l); sum+=result; } printf("%ld\n", sum); return 0; }