Cod sursa(job #1608466)
Utilizator | Data | 22 februarie 2016 09:17:56 | |
---|---|---|---|
Problema | Invers modular | Scor | 10 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.49 kb |
#include <fstream>
using namespace std;
ifstream is("inversmodular.in");
ofstream os("inversmodular.out");
int x, a, n;
int main()
{
is >> a >> n;
if(a % n == 1)
os << 1;
else
if((a*2) % n == 1)
os << 2;
else
for(int d = 3; d <= n; d+=2)
{
if((a*d) % n == 1)
{
os << d;
break;
}
}
is.close();
os.close();
return 0;
}