玄关,求调 站外题
  • 板块题目总版
  • 楼主_xiansheng_
  • 当前回复2
  • 已保存回复2
  • 发布时间2025/1/15 19:00
  • 上次更新2025/1/15 22:04:11
查看原帖
玄关,求调 站外题
1354088
_xiansheng_楼主2025/1/15 19:00

站外题

题目如下

求完全数的个数

题目描述

一个大于1的正整数若等于全部因子的和,则称此数为完全数。例如:6有因子1,2,3。同时6=1+2+3,所以6是完全数。

输入

一个正整数N(9<n<99999)。

输出

小于等于N的完全数的个数。

代码

#include <bits/stdc++.h>
using namespace std;
//cout<<fixed<<setprecision(n)<<变量;
//continue;
typedef char cc;
typedef int ii;
typedef double dd;
typedef long long ll;
typedef bool bb;
typedef float ff;
typedef string ss;
ll yzdh(int x){
	ll sum=1;
	for(int i=2;i*i<=x;i++){
		if(i*i==x && x%i==0){
			sum+=i;
		}else if(x%i==0){
			sum+=i+x/i;
		}
	}
	return sum;
}
ll n,cnt; 
int main(){
	cin>>n;
	for(int i=1;i<=n;i++){
		if(yzdh(i)==i){
			cnt++;
		} 
	}
	cout<<cnt;
	return 0;
}

谢谢各位大佬相助!!!!!!!!!!!!!!!!!!!

此外

有人玩第五吗?

2025/1/15 19:00
加载中...