Message on Whatsapp 8879355057 for DSA(OA + Interview) + Fullstack Dev Training + 1-1 Personalized Mentoring to get 10+LPA Job
0 like 0 dislike
1,251 views
in Online Assessments by Expert (108,690 points) | 1,251 views

2 Answers

0 like 0 dislike
Best answer

Pic of problem :- 

by Expert (108,690 points)
0 0
#include <bits/stdc++.h>
using namespace std;
#define int long long
int sumOfDigits(int x){
    int sum=0;
    while(x>0){
       sum+=x%10;
       x/=10;
    }
    return sum;
}
int32_t main() {
    int n;
    cin>>n;
    vector<int>arr(n);
    for(int i=0;i<n;i++)
    cin>>arr[i];
    int sum=0;
    for(int i=0;i<32;i++)
    {
       int k=0;int l=0;
       while(k<n)
       {
         int j=k;
         while(j<n && arr[j]&(1<<i))
         {
             l++;
             j++;
         }
         if(l==0)
         k++;
         else
         k=j;
         sum+=(1<<i)*(l)*(l+1)/2;
         l=0;
       }
       sum+=(1<<i)*(l)*(l+1)/2;
    }
    cout<<sum<<endl;
    return 0;
}
0 like 0 dislike
#include <bits/stdc++.h>
using namespace std;
#define int long long
int sumOfDigits(int x){
    int sum=0;
    while(x>0){
       sum+=x%10;
       x/=10;
    }
    return sum;
}
int32_t main() {
    int n;
    cin>>n;
    vector<int>arr(n);
    for(int i=0;i<n;i++)
    cin>>arr[i];
    int sum=0;
    for(int i=0;i<32;i++)
    {
       int k=0;int l=0;
       while(k<n)
       {
         int j=k;
         while(j<n && arr[j]&(1<<i))
         {
             l++;
             j++;
         }
         if(l==0)
         k++;
         else
         k=j;
         sum+=(1<<i)*(l)*(l+1)/2;
         l=0;
       }
       sum+=(1<<i)*(l)*(l+1)/2;
    }
    cout<<sum<<endl;
    return 0;
}
by (400 points)