程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> hdu 2035 反復平方法

hdu 2035 反復平方法

編輯:C++入門知識

hdu 2035 反復平方法


#include 
#include 
#include 
using namespace std;
int fun(int a,int b){
	//int c = 0;
	int d = 1;
	stack st;
	while(b){
		st.push(b & 1);
		b >>= 1l;	
	}
	while(!st.empty()){
		int t = st.top();
		st.pop();
		//c <<= 1;
		d = d*d %1000;
		if(t == 1){
		//	c ++;
			d = (d*a)%1000;
		}
	}
	return d;
}
int main(){
	int a,b;
	while(cin >> a >> b,a||b){
		cout << fun(a,b) << endl;
	}
	return 0;
}

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved