您好,欢迎来到外链网!
当前位置:外链网 » 站长资讯 » 专业问答 » 文章详细 订阅RssFeed

Timus 1118 Nontrivial Numbers

来源:互联网 浏览:100次 时间:2023-04-08

原题 : Nontrivial Numbers

题意:读入l,r, 从[l,r]之间找出一个数,使得这个数的因数的和除以这个数所得的值最小

解法:直接搜索

#include <iostream>using namespace std;#include <math.h>int l, r;int main() { cin >> l >> r; if (l == 1) { printf("1\n"); return 0; } int ans = 0; double t = r; for (int k = r; k >= l; k--) { vps云服务器 double sum = 0; for (int i = 2; i*i <= k; i++) if (k%i == 0) { sum += i; if ((k/i) != i) sum += (k/i); } if ((sum/k) < t) { t = sum/k; ans = k; } if (t == 0) break; } cout << ans << endl;}