LuoguP1010幂次方
来源:互联网 发布:蕉下伞是一场骗局知乎 编辑:程序博客网 时间:2024/05/17 06:45
先吐槽一下:
2=2(2(0))
这样变应该好一些吧(神改变…)
不说别的:
先换成2进制:
或:
接着就是对每个值继续进行操作:
10=2^3+2^18=2^35=2^2+2^03=2^1+2^01=2^0
然后,就是:
#1AC0ms/11882kB#2AC0ms/11882kB#3AC0ms/11882kB#4AC0ms/11882kB#5AC0ms/11882kB
先分析一下复杂度:
显然每次变为2的几次方,就是
代码:
/*ID:hh826532PROB:LANG:C++*/#define _FILE_ ""#include<iostream>#include<stdio.h>#include<algorithm>#include<string.h>#include<math.h>#include<vector>#include<map>#include<queue>#include<time.h>#include<fstream>#include<string>#include<set>#include<list>#include<stdlib.h>#define fr(i,a,b) for(int i=a,_end_=b;i<=_end_;i++)#define fd(i,a,b) for(int i=a,_end_=b;i>=_end_;i--)#define frei(s) freopen(s,"r",stdin)#define freo(s) freopen(s,"w",stdout)#define ll long long#define u unsignedusing namespace std;#define rt return#define inf 0x3f3f3f3f#define infll 4557430888798830399ll#define pc(x) putchar(x)#define spc putchar(' ')#define mem(x,y) memset(x,y,sizeof(x))#define memm(x,y,z) memset(x,y,sizeof(x[0])*z)#define gc getchar()#define ln pc('\n')#define writeint(x) printf("%d",x)#define lowbit(x) (x&(-x))int readuint(){ int s=0; char c=getchar(); while(c<'0'||c>'9')c=gc; while(c>=48&&c<='9'){ s=s*10+c-48; c=gc; } rt s;}int readint(){ int s=0,k=1; char c=getchar(); while((c<'0'||c>'9')&&c!='-')c=gc; if(c=='-'){ k=-1; c=gc; } while(c>=48&&c<='9'){ s=s*10+c-48; c=gc; } rt s*k;}void OPENFILE(){ char FILENAME[50]; if(strlen(_FILE_)==0)rt; sprintf(FILENAME,"%s.in",_FILE_); frei(FILENAME); sprintf(FILENAME,"%s.out",_FILE_); freo(FILENAME);}double log(double x,double y){ rt log10(x)/log10(y);}void print(int x){ int maxx=log(x,2); while(x) { x-=1<<maxx; if(maxx==1) pc('2'); else if(maxx==0) { pc('2'); pc('('); pc('0'); pc(')'); } else { pc('2'); pc('('); print(maxx); pc(')'); } if(x) { pc('+'); maxx=log(x,2); } }}int main(){ OPENFILE(); print(readuint()); rt 0;}
2 0
- LuoguP1010幂次方
- 幂次方
- 幂次方
- 幂次方
- 形式化函数(幂次方)
- 形式语义幂次方
- 幂次方算法
- 2的幂次方
- c++求幂次方
- 递归实现幂次方
- 2的幂次方
- [二分]幂次方
- 洛谷 P1010 幂次方
- python **幂次方
- P1010 幂次方
- P1010 幂次方
- P1010 幂次方 luogu
- 洛谷 P1010 幂次方
- maven(11)-聚合多模块
- IOS缓存管理之PINCache使用
- 关于如何美化WordPress默认的首页主题
- CIDR地址分类
- SSH整合,事务管理
- LuoguP1010幂次方
- 【Hibernate】——一对一映射
- Spring上传文件
- poj 1979(DFS)
- 如何阅读一本书
- 如何优化网站的访问速度
- codeforces 776c Molly's Chemicals 【思维】
- bzoj2212(线段树合并第一道)
- 算法提高 队列操作