Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <math.h>
- #define potega 7
- typedef unsigned long long U64;
- U64 tab[255];
- U64 modulozdwojek(U64 pod, U64 tab[], U64 mod, int ztab){
- printf("%llu %llu %llu\n", pod, tab[ztab], mod);
- if(tab[ztab]!=1){return (modulozdwojek(pod,(tab[ztab])/2,mod,ztab)*modulozdwojek(pod,(tab[ztab])/2,mod,ztab))%mod;}
- else {return pod%mod;}
- }
- void rozjebnapot(U64 wyk, U64 tab[]){
- int k=0,i=0;
- while(wyk){
- while(pow(2,k)<=wyk){
- tab[i]=pow(2,k);
- k++;
- }
- wyk-=tab[i];
- i++;
- k=0;
- }
- }
- int main(){
- int i = 0,j=0;
- U64 pod = 65, wynik;
- rozjebnapot(potega,tab);
- while(tab[j]){
- printf("%llu ", tab[j]);
- j++;
- }
- puts("");
- while(tab[i]){
- wynik*=modulozdwojek(pod,tab,187,i);
- i++;
- }
- wynik%=175;
- printf("wynik: %llu\n", wynik);
- puts("i chuj");
- getch();
- return 0;
- }
Add Comment
Please, Sign In to add comment