No więc napisałem program i mam błąd jak w temacie.
Kilkanaście razy sprawdziłem kod i napisałem kilka wersji programu (małe zmiany) i nadal ów błąd występuję. Wiem, że on nadal jest, bo wrzucam to zadanie na SPOJa (pl.spoj.pl) i mi go wyskakuje, że program jest zły (błąd SIGSEGV w każdym z testów). Program się kompiluje oczywiście (również z dopiskiem -ggdb).
Oto kod:
Kod:
// Autor: kokosoko

#include<stdio.h>
#include<stdlib.h>

int main(void)
{
        long long int x, y, t, i, j, max=-10000000, min=10000000, min2=1000000000, k, tab[100001], tab2[100001],
tab3[100001], ans;

        scanf("%lld",&t);
        for(i=0;i<t;i++)
        {
                scanf("%lld %lld",&tab[i],&tab2[i]);
                if(tab[i]>max)max=tab[i];
                if(tab[i]<min)min=tab[i];
        }
        for(i=min;i<=max;i++)
        {
                tab3[i]=0;
                for(j=0;j<t;j++)
                {
                        tab3[i]+=abs(tab2[j]);
                        tab3[i]+=abs(i-tab[j]);
                }
                if(tab3[i]<min2)
                {
                        min2=tab3[i];
                        ans=i;
                }
        }
        printf("%lld %lld\n",ans,tab3[ans]);

        return 0;
}
Przypuszczam, że coś z tablicami jest nie tak (np. wywołanie nieistniejącej części tablicy), ale jak analizowałem kod, to wszystko było ok.

Gdyby komuś miało to pomóc w pomocy, tam jest treść zadania: https://pl.spoj.pl/problems/ETI07E5

Dziękuję za każdą wskazówkę.

PS Zapomniałem - wszystkie wyniki mam dobre (z testów i z forum polskiego SPOJa).