现在的位置: 首页 > 综合 > 正文

hdu 2035 大数模

2013年08月10日 ⁄ 综合 ⁄ 共 367字 ⁄ 字号 评论关闭

这里需要注意的是,写移位或者位运算符的时候要加上括号,不然容易出错。

#include<stdio.h>
#include<stdlib.h>
#define n 1000
int compute_a_b(int a,int b){
    if(b==1) return a%n;
    else if(b&1) return ((compute_a_b(a,b>>1)%n)*(compute_a_b(a,(b>>1)+1)%n))%n;
    else if((b&1)==0) return ((compute_a_b(a,b>>1)%n)*(compute_a_b(a,b>>1)%n))%n;
}
int main(){
    int a,b;
    while(scanf("%d%d",&a,&b)&&a+b!=0){
        printf("%d\n",compute_a_b(a,b));
    }
    return 0;
}

抱歉!评论已关闭.