完全平方数
涉及知识点:
- 暴力/二分
solution:
- \(祝大家周末愉快\)
- \([1,n]区间的完全平方数的个数等于\) \(\sqrt{n}\)
- \([L,R]区间的完全平方数的个数可以理解为\) $\sqrt{R} - \sqrt{L-1} $
- \(0也是完全平方数,L和R是否为0判断一下即可\)
- \(当然将所有平方数放入数组,lowerbound二分也是时间复杂度允许的可行解\)
std:
#include <bits/stdc++.h>
using namespace std;
#define ll long long
int main()
{
int t,l,r;
cin>>t;
while(t--){
cin>>l>>r;
if(l != 0)
l = sqrt(l-1) + 1;
if(r != 0)
r = sqrt(r) + 1;
else
r = 1;
cout<<r - l<<endl;
}
return 0;
}
原文地址:https://www.cnblogs.com/QFNU-ACM/p/12677684.html
时间: 2024-11-09 03:48:24