竞赛讨论区 > 数学题
头像
柚子大王驾到
发布于 01-31 21:07 山东
+ 关注

数学题

对于任何一个正整数 ,如果 是它的一个因子,那么 必然也是它的一个因子。通常情况下,因子是成对出现的。举例:数字 的因子有:(共 个,偶数个)。数字 的因子有:(共 个,偶数个)。什么时候因子数量会变成奇数呢?只有当其中一对因子相等时,即 ,也就是 。这意味着:一个正整数的因子个数为奇数,当且仅当它是一个“完全平方数”。解题步骤转化问题: 题目要求求 中因子数量为奇数的整数个数,等价于求 中完全平方数的个数。计算方法: 一个正整数 的平方 如果要小于等于 ,即 ,则 。结论: 在 范围内,完全平方数的个数正好是 (即对 向下取整)。示例验证当 时:,向下取整得 。符合条件的数是 。当 时:,向下取整得 。C++ 参考代码由于 ,直接使用 sqrt 函数即可轻松过题。C++#include #include

 #include<bits/stdc++.h>
using namespace std;
void solve() {
    int n;
    if (cin >> n) {
        int res = (int)sqrt(n);
        cout << res << endl;
    }
}
int main() {
    int T;
    cin >> T;
    while (T--) {
        solve();
    }
    return 0;
}

全部评论

(0) 回帖
加载中...
话题 回帖

本文相关内容

等你来战

查看全部

热门推荐