#import sys
# input = sys.stdin.readline
def mp():return map(int,input().split())
def lmp():return list(map(int,input().split()))
def mps(A):return [tuple(map(int, input().split())) for _ in range(A)]
import math
import bisect
import heapq
from copy import deepcopy as dc
from itertools import accumulate
from collections import Counter, defaultdict, deque
def ceil(U,V):return (U+V-1)//V
def modf1(N,MOD):return (N-1)%MOD+1
inf = int(1e20)
mod = 998244353

t = int(input())
for _ in range(t):
    n = int(input())
    sn = int(n**0.5)
    snm = sn-1
    snp = sn+1
    s = [sn,snp]
    ans = snm
    for i in s:
        if i**2 <= n:
            ans = i
    print(ans)