Mafa Dev
[UVA] 10041번 문제 본문
UVA 10041번 문제 입니다.
가장 이동 거리를 최소화 할 수 있는 집 하나를 정하고 그 집과 다른 집들의 거리를 구하는 문제였습니다.
이동 거리를 최소화 할 수 있는 집 하나를 찾기가 가장 어려웠는데요
문제를 계속해서 풀다보니 배열들을 각각 빼 보니 최소화 할 수 있는 집을 찾는 것과 동일한 값이 나와
코팅을 해보니 Accepted가 떳네요
소스 입니다.
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main()
{
int n=0;
int input=0;
int nod[10000]={0,};
int i=0;
int j=0;
int sum=0;
int average=0;
int i1=0;
int j1=0;
int temp=0;
int left=0;
int right=0;
while(scanf("%d",&n)!=EOF)
{
for(i=0; i<n; i++)
{
scanf("%d",&input);
for(j=0; j<input; j++)
{
scanf("%d",&nod[j]);
}
for(i1=0; i1<input-1; i1++)
{
for(j1=i1+1; j1<input; j1++)
{
if(nod[i1]>nod[j1])
{
temp = nod[i1];
nod[i1] = nod[j1];
nod[j1] = temp;
}
}
}
if(input%2==0)
{
left= (input/2)-1;
right= (input/2);
while(left!=-1 && right!=input+1)
{
sum = sum + nod[right] - nod[left];
right++,left--;
}
printf("%d\n",sum);
sum=0;
}
else if(input%2==1)
{
left = (input/2)-1;
right = (input/2)+1;
while(left!=-1 && right!=input+1)
{
sum = sum + nod[right] - nod[left];
right++,left--;
}
printf("%d\n",sum);
sum=0;
}
}
}
return 0;
}
'algorithm > 문제' 카테고리의 다른 글
[dovelet] rlpn (0) | 2013.03.10 |
---|---|
[dovelet] complete_graph (0) | 2013.03.06 |
[dovelet] fuse (0) | 2013.03.06 |
[dovelet] coci_spa (0) | 2013.03.05 |
[UVA] 11462 (0) | 2013.02.20 |