SP12304
简述题目:
题目要求找出满足条件
解题思路:
- 首先定义一个函数
,用于计算 的所有正因子的和。在函数内部,使用一个循环遍历 的所有可能因子。对于每一个因子 ,如果 能够整除 ,那么将 加到用来存储的 上,并将 除以 得到的商加到 上。注意:除数和被除数不能相同。 - 接下来定义一个函数
,用于找到满足条件的最小整数 。初始化 为 ,然后进行如下步骤:
- 检查
是否等于 ,如果相等,则返回当前的 。 - 如果
大于 ,说明没有满足条件的 ,跳出循环。 - 否则,
自增 ,继续下一轮循环。
主要知识:
这个题目主要用到了数学知识中的因子和的概念,以及循环和条件语句的使用。
Code:
#include <iostream>
using namespace std;
int Suum(long long n) {
long long sum = 0;
for (int i = 1; i * i <= n; i++) {
if (n % i == 0) {
sum += i;
if (i != (n/i)) {
sum += (n/i);
}
}
}
return sum;
}
int minsum(long long n) {
long long i = 1;
while (true) {
if (Suum(i) == n) {
return i;
}
if (i > n) {
break;
}
i++;
}
return -1;
}
int main() {
int T;
cin >> T;
while (T--) {
long long n;
cin >> n;
long long ans = minsum(n);
cout << ans << endl;
}
return 0;
}
本文来自一名初中牲,作者:To_Carpe_Diem
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 【杂谈】分布式事务——高大上的无用知识?