Cod sursa(job #2505541)

Utilizator RamanujanNeacsu Mihnea Ramanujan Data 6 decembrie 2019 23:37:59
Problema Sortare prin comparare Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.62 kb

#include <fstream>

using namespace std;
long long lgput(long long n, long long exp, long long c)
{
   long long p=1;
   while(exp!=0)
   {
       if(exp%2==1)
       {
         p=(p*n)%c;
         exp--;
       }
       n=(n*n)%c;
       exp/=2;
   }
   return p;
}
ifstream fin("algebra2.in");
ofstream fout("algebra2.out");
int main()
{
    long long n; fin>>n;
    unsigned long long s;
    if(n%2==0)
    {
       s=n/2;
       s*=(n+1);
    }
    else
    {
        s=(n+1)/2;
        s*=n;
    }
    fout<<lgput(n, s,  1000000009);
    fin.close();
    fout.close();
    return 0;
}