题解:P14304 【MX-J27-T1】分块
题意
给定一个数
思路
容易注意到,对于一个数
代码
注意开 long long,以及用 sqrtl,避免掉精度。
#include<bits/stdc++.h>
#define int long long
using namespace std;
int n,x;
signed main(){
ios::sync_with_stdio(0);
cin.tie(0),cout.tie(0);
cin>>n;
for(;n--;){
cin>>x;
int m=sqrtl(x);
int ans=(m-1)*3;
if(m*m<=x) ans++;
if(m*(m+1)<=x) ans++;
if(m*(m+2)<=x) ans++;
cout<<ans<<"\n";
}
return 0;
}