Próbuję rozwiązać następujące zadanie: http://pl.spoj.com/problems/BINOMS/ Według sędziego mój kod zwraca błędną odpowiedź. Proszę o wskazówki gdzie może być błąd. Dla danych testowych podanych w treści zadania program zwraca dobre odpowiedzi, wpisałem też kilka innych testów np 1000, 999 i wynik też był prawidłowy.
#include <iostream>
using namespace std;
int main()
{
unsigned short int t, n, k;
long double result;
cin >> t;
while(t--)
{
cin >> n >> k;
if((n == 0) || (k == 0))
{
cout<<"1"<<endl;
}
else
{
result = 1;
for(int i = 1; i <= k; ++i)
{
result = result * (n - i + 1) / i;
}
cout<<result<<endl;
}
}
return 0;
}