CTNEWS - Lâu đài cát
Tác giả: hieult
Ngôn ngữ: C++
#include <stdio.h>
//#include <conio.h>
void Quicksort(long A[],long lower,long upper)
{
long x = A[(lower + upper) / 2];
long i = lower;
long j = upper;
do{
while(A[i] < x)
i ++;
while (A[j] > x)
j --;
if (i <= j)
{
long tg=A[i];
A[i]=A[j];
A[j]=tg;
i ++;
j --;
}
}while(i <= j);
if (j > lower)
Quicksort(A, lower, j);
if (i < upper)
Quicksort(A, i, upper);
}
main()
{
long n,x,y,a[25002],b[25002];
long long KQ=0;
scanf("%ld %ld %ld",&n,&x,&y);
for(long i=1;i<=n;i++)
scanf("%ld %ld",&a[i],&b[i]);
Quicksort(a,1,n);
Quicksort(b,1,n);
for(long i=1;i<=n;i++)
{
if(a[i]>b[i])
KQ=KQ+(a[i]-b[i])*y;
else KQ=KQ+(b[i]-a[i])*x;
}
printf("%lld",KQ);
//getch();
}