2791: 练42.4 优秀数字

内存限制:64 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:10 解决:5

题目描述

小 H 是一个喜欢数数的人。我们称一个数是优秀的数字,当且仅当其约数个数为偶数,现在小 H 想知道,$1\sim n$ 中有多少个优秀的数字。

输入

一行,一个数$n$($1≤n≤2000$)。

输出

一行,一个数,表示答案。

样例输入 复制

3

样例输出 复制

2

提示

完全平方数(1/4/9/16......)的约数个数一定是奇数。

#include<bits/stdc++.h>
using namespace std;
int n;
int main(){
    cin>>n;
    cout<<n-floor(sqrt(n));  //完全平方数的约数个数为奇数;1-n之间的完全平方数有floor(sqrt(n))。
    return 0;
}