欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

hdu 6182 A Math Problem

程序员文章站 2022-03-24 15:47:19
...

点击打开链接

快速幂开个long long即可,也可以暴力,因为数据小于10^18,即k<16

#include<cstdio>
#include<cmath>
using namespace std;
typedef long long ll;

ll quic_power(ll x,ll n){  //快速幂 
	ll result=1;
	for(;n;n>>=1){
		if(n&1)
			result*=x;	
		x*=x;
	}
	return result;
}

int main(){
	ll n;
	int cnt;
	
	while(~scanf("%lld",&n)){
		cnt=0;
		for(int i=1;i<=15;i++)
			if(quic_power(i,i)<=n)
				cnt++;
							
		printf("%d\n",cnt);	
	}
	return 0;
} 

 

相关标签: 快速幂 快速幂