Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<bits/stdc++.h>
- using namespace std;
- long long int cnt=0;
- void merg(long long int a[],long long int l,long long int mid,long long int h)
- {
- long long int i,j,k,n1,n2,x;
- n1=mid-l+1;
- n2=h-mid;
- long long int left[n1+5],right[n2+5];
- memset(left,0,sizeof(left));
- memset(right,0,sizeof(right));
- for(x=0;x<n1;x++)
- {
- left[x]=a[l+x];
- }
- for(x=0;x<n2;x++)
- {
- right[x]=a[mid+1+x];
- }
- i=0;
- j=0;
- k=l;
- while(i<n1 && j<n2)
- {
- if(left[i]<=right[j])
- {
- a[k++]=left[i];
- i++;
- }
- else
- {
- a[k++]=right[j];
- j++;
- cnt+=n1-i;
- }
- }
- while(i<n1)
- {
- a[k++]=left[i];
- i++;
- }
- while(j<n2)
- {
- a[k++]=right[j];
- j++;
- }
- }
- void mergesort(long long int a[],long long int l,long long int h)
- {
- if(l<h)
- {
- long long int mid=l+((h-l)/2);
- mergesort(a,l,mid);
- mergesort(a,mid+1,h);
- merg(a,l,mid,h);
- }
- }
- int main()
- {
- long long int n,i,j;
- while(cin>>n && n)
- {
- long long int a[n+5];
- cnt=0;
- for(i=0;i<n;i++)
- cin>>a[i];
- mergesort(a,0,n-1);
- if(cnt%2==0)
- cout<<"Carlos"<<endl;
- else
- cout<<"Marcelo"<<endl;
- }
- return 0;
- }
Add Comment
Please, Sign In to add comment