半数集0

# include <cstdio> //

//高效算法(动态规划的思想)
// 实际上cnt_sum[n]=cnt[1]+...cnt[n]=cnt_sum[n-1]+cnt[n];

//1,1;2,3;2,5;4,9;4,13;6,19;6,25;10,35
  void  main()
  {
 int n,cnt[1001],cnt_sum[1001];
     cnt[1]=1;
     cnt_sum[1]=1;

for(int i=2;i<=1000;i++)
   {
    cnt[i]=cnt_sum[i/2]+1;

cnt_sum[i]=cnt_sum[i-1]+cnt[i];
   }

for( i=2;i<=10;i++)
  
  printf("%4d",cnt_sum[i]);

}
  printf("\n---------------------------------\n");
 for( i=2;i<=10;i++)
  


  printf("%4d",cnt[i]);
 }
 printf("\n---------------------------------\n");
  while(scanf("%d",&n)!=EOF)
  {

printf("%d\n",cnt[n]);

}
}

原文地址:https://www.cnblogs.com/big4panda/p/6417617.html