COFO::1426C Increase and Copy

Problem

Point

Design

Big O(time)

Code

// https://beenpow.github.io/
#define rep(i,a,b) for(int i=(a);i<(b);i++)
#define r_rep(i,a,b) for(int i=(a);i>(b);i--)
#include<iostream>
#include<algorithm>
#include<string>
#include<vector>
#include<queue>
#include<cmath>
typedef long long ll;
using namespace std;
ll n;
void solve(){
    cin >> n;
    ll ans = 1e9;
    for(int x = 1; x * x <= n; x++){
        //ans = min(ans, (x-1) + (n-x) /x ); 1번
        ans = min(ans, (x-1) + ((n-x) + x -1)/x ); // 2번
    }
    cout << ans << '\n';
}
int main(){
    //freopen("input.txt", "r", stdin);
    int tc; cin >> tc;
    while(tc--)
        solve();
    return 0;
}