#A0618. 心好静,而欲牵之

心好静,而欲牵之

题目描述

阿克曼(Ackermann)函数 A(m,n)A(m,n) 中,m,nm, n 定义域是非负整数,函数值定义为:

  • m=0m=0 时:akm(m,n)=n+1\text{akm}(m,n)=n+1
  • m>0m>0n=0n=0 时:akm(m,n)=akm(m1,1)\text{akm}(m,n)=\text{akm}(m-1,1)
  • m>0m>0n>0n>0 时:akm(m,n)=akm(m1,akm(m,n1))\text{akm}(m,n)=\text{akm}(m-1,\text{akm}(m,n-1))

33DAI 最近学了并查集,同时使用路径压缩和启发式合并之后,并查集的每个操作平均时间仅为 O(α(n))O(\alpha(n)),其中 α\alpha 为阿克曼函数的反函数,即为最大的整数 mm 使得 akm(m,m)n\text{akm}(m, m) \leqslant n

输入 nn,请输出 α(n)\alpha(n) 的值,即满足 akm(m,m)n\text{akm}(m,m)\le n 的最大的 mm 值。

输入格式

第一行为一个整数 TT,表示数据组数。

接下来 TT 行,每行为一个整数 nn

输出格式

输出 TT 行,即每个 nn 对应的 α(n)\alpha(n) 的值。

4
1 
3
33
333
0
1
2
3

数据规模与约定

对于 100%100\% 的数据,1T1061\le T\le 10^61n10181 \le n \le 10^{18}

  • 子任务 1(10 分):保证 T1000T\le 1000n10n\le 10.
  • 子任务 2(20 分):保证 T1000T\le 1000n100n\le 100.
  • 子任务 2(30 分):保证 T1000T\le 1000.
  • 子任务 4(40 分):没有特殊限制.