Nie mam pojęcia, dlaczego jesteś zbyt mało wyedukowany. Może to wina programu kształcenia, ministra szkolnictwa, rządu? Może za mało czytasz literatury fachowej?
Co do spoja. Sprawdzanie polega na dokładnym, z ewentualnym pominięciem nadmiarowych białych znaków, porównaniu dwóch plików. Pliku wzorcowego - przygotowanego przez autora zadania, z plikiem "wyprodukowanym" przez twój program, który jest twoją odpowiedzią [twojego programu] na test. Ale kiedy to następuje? Ano dopiero wtedy, gdy twój program "powie":
- "Właśnie już skończyłem swoją robotę, można sprawdzać!".
A jak to zrobi - po prostu skończy się prawidłowo - sygnałem 0 [np: return 0]
Jeżeli tego nie zrobi, program sędziujący przerywa "zawody" i "stwierdza", że:
- " No sorry! Bardzo przykro mi, ale limit czasu [czekania] został wyczerpany, nie mogę czekać w nieskończoność, i ani sekundy dłużej niż zaplanował to mój kochany autor!"
i nawet jeżeli do tego momentu, twój program, wypisałby 100% poprawną odpowiedź i tak nie ma to już znaczenia, czas się skończył.
PS
Poprawiłem w twoim poście wklejenie kodu, a tu możesz zobaczyć i właśnie w taki sposób testować na ideone.com - wklejając nie tylko swój kod ale i wklejając też do okienka input różne testy: http://ideone.com/DLTAHh
Widać, że w okienku output nic nie ma, a czas oczekiwania skończył się [Time limit exceeded]