Spędziłem trochę czasu i parę prób zrobiłem, i nie widzę powodu, dla którego program mógłby dawać czasami złe odpowiedzi (ale też moja znajomość C# jest dość powierzchowna)
zaś z prób wykonanych na działającym programie w C wynika, że nie żadnych złośliwych danych w testach
jeżeli masz zamiar dalej próbować zrobić to zadanie, to mogę zaproponować kilka zmian w celu poprawienia wydajności (a przy okazji przejrzystości) programu, ale to już na priv