基本算法思想吧,找规律。
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 #include <iostream> 2 #include<cstdio> 3 using namespace std; 4 5 int f[100000000]; 6 7 int dg(int n) 8 { 9 if(n==1) return 1; 10 else if(n==2) return 2; 11 else if(n==3) return 2; 12 else return dg(n/2)+1; 13 } 14 15 int main() 16 { 17 int n; 18 while(scanf("%d",&n)!=EOF) 19 { 20 printf("%d\n",dg(n)); 21 } 22 //cout << "Hello world!"<<endl; 23 return 0; 24 }