博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Integer’s Power HDU - 3208(容斥原理)
阅读量:4710 次
发布时间:2019-06-10

本文共 1709 字,大约阅读时间需要 5 分钟。

找出(l,r)内的所有的指数最大的次方和

因为一个数可能可以看成a^b和c^d,所以我需要去重,从后往前枚举幂数,然后找可以整除的部分,把低次幂的数去掉。

然后开n方的部分,先用pow()函数找到最接近答案的数,但是会丢失精度,然后在这个数的附近寻找最接近答案的整数,用快速幂在乘n次幂回去,看最接近原本数的是哪一个。

#include#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define lowbit(x) (x & (-x))typedef unsigned long long int ull;typedef long long int ll;const double pi = 4.0*atan(1.0);const int inf = 0x3f3f3f3f;const int maxn = 100;const int maxm = 200010;const int mod = 998244353;const double eps = 1e-8;using namespace std;ll n, m;int T, tol;ll num[70];ll INF = 1e18;ll qpow(ll a, ll b) { ll ans = 1; while(b) { if(b&1) { double tmp = 1.0 * INF / ans; if(a > tmp) return -1; ans = ans * a; } b >>= 1; if(a > ((ll)1<<31) && b) return -1; a = a*a; } return ans;}ll calc(ll x, int pos) { ll a = (ll)pow((double)x, 1.0/pos); ll ansl = qpow(a-1, pos); ll ansm = qpow(a, pos); ll ansr = qpow(a+1, pos); if(ansr != -1 && ansr <= x) return a+1; if(ansm != -1 && ansm <= x) return a; return a-1;}ll solve(ll x) { memset(num, 0, sizeof num); num[1] = x; int pos = 2; for(; pos <= 64; pos++) { ll tmp = calc(x, pos) - 1; if(tmp <= 0) break; num[pos] = tmp; } pos--; for(int i=pos; i>=1; i--) { for(int j=2; i*j<=pos; j++) { num[i] -= num[i*j]; } } //for(int i=1; i<=pos; i++) printf("%I64d%c", num[i], i==pos ? '\n' : ' '); ll ans = 0; for(int i=1; i<=pos; i++) ans += i * num[i]; return ans;}int main() { while(scanf("%I64d%I64d", &n, &m), n||m) { ll ans = solve(m); ans -= solve(n-1); printf("%I64d\n", ans); } return 0;}
View Code

 

转载于:https://www.cnblogs.com/Jiaaaaaaaqi/p/9473284.html

你可能感兴趣的文章
引用 IP电话的原理结构及其关键技术
查看>>
cocos2d-x App 图标
查看>>
Eclipse中Outline里各种图标的含义
查看>>
css原生变量var()
查看>>
c++读文件-对try-throw-catch的应用
查看>>
常见的日期问题计算
查看>>
sql参数判断
查看>>
图形世界分裂的两派——理清D3D和OpenGL的脉络
查看>>
js字符串
查看>>
浅析java中setter和getter的作用
查看>>
maven工程运行前准备
查看>>
MonkeyRunner Python环境搭建
查看>>
利用Python批量重命名文件夹下文件
查看>>
webpack入门文档教程
查看>>
CSS 小技巧
查看>>
Atyls HDMI输出纯色显示
查看>>
iOS之核心动画(Core Animation)
查看>>
IOS UI 第九篇: UITABLEVIEW
查看>>
聊一聊PV和并发
查看>>
Django打造在线教育平台_day_3: 搭建后台管理系统Xadmin
查看>>