BZOJ 2796: [Poi2012]Fibonacci Representation
2016-11-01 11:27
302 查看
#include<cstdio> #include<map> #include<cstring> #include<cmath> #include<algorithm> #define g getchar() #define ll long long #define inf 2e18 using namespace std; inline ll read(){ ll x=0,f=1;char ch=g; for(;ch<'0'||ch>'9';ch=g)if(ch=='-')f=-1; for(;ch>='0'&&ch<='9';ch=g)x=x*10+ch-'0'; return x*f; } inline void out(ll x){ int a[25],t=0; if(x<0)putchar('-'),x=-x; for(;x;x/=10)a[++t]=x%10; for(int i=t;i;--i)putchar('0'+a[i]); if(t==0)putchar('0'); putchar('\n'); } map<ll,int>mp; ll num[1005],top; int T;ll n; int dfs(ll x){ int ans,tmp; if(mp[x])return mp[x]; tmp=lower_bound(num,num+top,x)-num; if(num[tmp]==x)return mp[x]=1; return mp[x]=min(dfs(x-num[tmp-1]),dfs(num[tmp]-x))+1; } int main(){ // freopen("","r",stdin); // freopen("","w",stdout); T=read(); num[0]=num[1]=1;for(int i=2;num[i-1]<=inf;++i,++top)num[i]=num[i-1]+num[i-2]; for(;T--;){ n=read(); out(dfs(n)); } return 0; }
年代太久远怎么做忘了。。抱歉
相关文章推荐
- BZOJ2796: [Poi2012]Fibonacci Representation
- bzoj 2796[Poi2012]Fibonacci Representation 贪心
- bzoj2796 [Poi2012]Fibonacci Representation 贪心
- bzoj 2796: [Poi2012]Fibonacci Representation 记忆化搜索
- BZOJ2796 [Poi2012]Fibonacci Representation
- 【bzoj2796】 [Poi2012]Fibonacci Representation
- [BZOJ2796][Poi2012]Fibonacci Representation
- [BZOJ 2796]POI2012 Fibonacci Representation
- 【POI2012】【BZOJ2796】Fibonacci Representation
- 【bzoj2796】 [Poi2012]Fibonacci Representation
- [Poi2012] bzoj 2788 Festival
- [BZOJ2788][Poi2012]Festival(差分约束+floyed+tarjan)
- BZOJ2795: [Poi2012]A Horrible Poem
- 【BZOJ】【P2802】【POI2012】【Warehouse Store】【题解】【贪心】
- [BZOJ2803][Poi2012]Prefixuffix
- 【bzoj2789】[Poi2012]Letters 树状数组求逆序对
- [BZOJ 2801]POI2012 Minimalist Security
- BZOJ 2792 [POI 2012] 二分答案 解题报告
- bzoj 2802: [Poi2012]Warehouse Store
- 【POI2012】【BZOJ2795】A Horrible Poem