竞赛
考级
如果一个数的开方(int)的平方还是原数 那它就是完全平方数 根据这个原理,代码很容易敲出来了 代码: 都看到这了,点个赞呗!!!
众所不一定周知,C中有一个函数叫做 round(x),它是用来求 x (double)x \; (\texttt{double})x(double) 四舍五入后的值的。 C中还有一个函数叫做 sqrt(x),它是用来求 xxx 的算数平方根的(也就是 x\sqrt{x}x ),其返回值为 double\texttt{double}double 类型的数。 那么在这道题中,对于每一个 i (l≤i≤r)i \; (l \le i \le r)i(l≤i≤r),只要满足:i=⌈i⌋\sqrt{i}=\left \lceil \sqrt{i} \right \rfloori =⌈i ⌋,则 iii 就是完全平方数。 CODE
不用函数可以这样写 #include <bits/stdc++.h>//<iostream> using namespace std; int main() { int l,r,sum=0; cin>>l>>r; bool o=1;//标记一下 for(int i=l;i<=r;i++){ for(int j=1;j<=i;j++){ if(j*ji){ sum++; o=0; } } } //枚举法 if(o0) cout<<sum; else cout<<'0'; return 0; }
超级教学 题目传送门 第一步:为了缩短时间,我们用ios::sync_with_stdio缩短一次再用cin.tie(0)和cout.tie(0)把输入输出时间归零 第二步:输入 第三步:用pow(int(sqrt(i)),2)==i判断是否是完全平方数 第四步:输出
提交答案之后,这里将显示提交结果~