HDU2035 人见人爱A^B

来源:互联网 发布:js trim 编辑:程序博客网 时间:2024/06/09 19:56

问题链接HDU2035 人见人爱A^B

问题简述:参见上述链接。

问题分析这问题可以用乘方取模函数来解决。

程序说明:(略)。

AC的C++语言程序如下:

/* * 乘方取模 * * 已知给定的正整数a、n和m,计算x的值,a^n = x (mod m)。 * * 二分法用在这里也很有效果。 */#include <stdio.h>long powermod(long a, long n, long m){    long res = 1L;    while(n) {        if(n & 1L) {            res *= a;            res %= m;        }        a *= a;        a %= m;        n >>= 1;    }    return res;}int main(void){    long a, n;    for(;;) {        scanf("%ld %ld", &a, &n);        if(a==0 && n==0)            break;        printf("%ld\n", powermod(a, n, 1000L));    }    return 0;}



1 0
原创粉丝点击