Pagini recente » Cod sursa (job #3137881) | Cod sursa (job #2914847) | Cod sursa (job #552306) | Cod sursa (job #2693693) | Cod sursa (job #68536)
Cod sursa(job #68536)
#include<math.h>
#include<stdio.h>
#include<stdlib.h>
int incz,retz,vb1,diz,aux,n,m,x,y,i,j;
int a[7000][4];
int main()
{
freopen("sate.in","r",stdin);
freopen("sate.out","w",stdout);
scanf("%d%d%d%d",&n,&m,&x,&y);
for(i=1;i<=m;i++)
{
scanf("%d%d%d",&a[i][1],&a[i][2],&a[i][3]);
}
aux=m;
i=0;
while(i<m-1)
{
i++;
j=i+1;
while(j<m)
{
j++;
if (a[i][1]==a[j][1])
{
m++;
if (a[i][2]<a[j][2])
{
a[m][1]=a[i][2];
a[m][2]=a[j][2];
}
if (a[i][2]>a[j][2])
{
a[m][1]=a[j][2];
a[m][2]=a[i][2];
}
a[m][3]=abs(a[i][3]-a[j][3]);
}
}
}
i=0;
while(i<aux-1)
{
i++;
j=i+1;
while(j<m)
{
j++;
if (a[i][2]==a[j][2])
{
m++;
if (a[i][1]<a[j][1])
{
a[m][1]=a[i][1];
a[m][2]=a[j][1];
}
if (a[i][1]>a[j][1])
{
a[m][1]=a[j][1];
a[m][2]=a[i][1];
}
a[m][3]=abs(a[i][3]-a[j][3]);
}
}
}
/*for(i=1;i<=m;i++)
{
printf("%d %d %d",a[i][1],a[i][2],a[i][3]);
printf("\n");
}*/
vb1=1;
retz=x;
incz=1;
while (retz!=y)
{
if (vb1==0)
{
retz=0;
diz=0;
incz++;
}
vb1=0;
for(i=incz;i<=m;i++)
{
if ((a[i][1]==retz) && (a[i][2]<=y))
{
retz=a[i][2];
diz=diz+a[i][3];
vb1=1;
}
}
}
printf("%d",diz);
return 0;
}