Cod sursa(job #140739)

Utilizator Mishu91Andrei Misarca Mishu91 Data 22 februarie 2008 11:07:13
Problema Transport Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.47 kb
#include<cstdio>

FILE *fin=freopen("sticle.in","r",stdin),
     *fout=freopen("sticle.out","w",stdout);
     
int n,t,r; 
 
int log(int k)
{
  if(k==0)
    return 0;
  if(k%2 && k>1) r=1;
  return log(k/2)+1; 
} 
     
void solve()
{
  scanf("%d",&n);
  r=0;
  int q=log(n);
  if(r==1)
  {
    printf("%d\n",q);
    return;
  }
  printf("%d\n",q-1);
}
     
int main()
{
  scanf("%d",&t);
  for(int i=1;i<=t;i++)
    solve();
  return 0;
}