8-12 Erratic Expansion uva12627
Posted bxd123
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了8-12 Erratic Expansion uva12627相关的知识,希望对你有一定的参考价值。
题意:一开始有一个红气球 每小时后一个红气球会变成三个红气球和一个蓝气球 第k小时 a到b行之间有几个红气球
递归找规律题目
一定要注意涉及指数的时候一定要开long long 数组!!!!
#include<bits/stdc++.h> using namespace std; long long s[35]; long long f(int k,int i) { if(i<=0)return 0; if(k==0)return 1; if( i<=pow(2,k-1) ) { return 2*f(k-1,i); } else { return 2*s[k-1]+f(k-1, i-pow(2,k-1) ); } } int main() { s[0]=1; for(int i=1;i<=30;i++) s[i]=3*s[i-1]; int n;cin>>n; for(int i=1;i<=n;i++) { int k,a,b; scanf("%d%d%d",&k,&a,&b); printf("Case %d: %lld ",i,f(k,b)-f(k,a-1) ); } }
以上是关于8-12 Erratic Expansion uva12627的主要内容,如果未能解决你的问题,请参考以下文章
UVa12627 Erratic Expansion (分治)
Uva 12627 Erratic Expansion(递归)
(记忆化+暴力)UVA - 12627 Erratic Expansion
UVA - 12627 Erratic Expansion(奇怪的气球膨胀)(递归)