W takim razie jestem pełen podziwu. Nie uczyłaś /ćwiczyłaś wskaźników, a “ukręciłaś” taki kawał kodu, nie żartuję! Fakt że z błędami ale i tak podziwiam.
Co do zwracania - tak można, ale to już trochę historia bo jest dużo lepszy sposób - referencja.
Najlepszym sposobem [jedynym?] nauczenia się czegokolwiek jest robienie tego i upadanie [jazda na koniu, na rowerze czy programowania]. Ale od czasu do czasu trzeba też poczytać zaczynając od podstaw - a co czytasz?
SPOJ ma wiele zalet i wad. Jedną z najbardziej mnie niepokojącą jest to, że może utrwalać błędy programisty. Więc musisz zdawać sobie sprawę, że mimo AC, twój kod może być fatalny. Jak temu zapobiec? Jedyny sposób jaki widzę - znajdź sobie mentora, który sprawdzi twój kod i zwróci uwagi na błędy. Inny sposób, to kodowanie we dwie osoby i sprawdzaniwe na wzajem swoich kodów. Na forum nie można tego robić, bo są osoby słabe duchem i dostępny tutaj gotowy kod nie byłby dla nich dobry.