1 条题解
-
0
#include <bits/stdc++.h> using namespace std; int main() { int x, y;scanf("%d%d", &x, &y); for(int a=x;a<=y;a++) { int sa=1; for(int i=2;i<=sqrt(a+1);i++) if(a%i==0) { sa=sa + i + a/i; if(i*i==a)sa=sa-i; } //到此 a确定,sa也确定 if(sa<x || sa>y)continue; int b=sa, sb = 1; for(int i=2;i<=sqrt(b+1);i++) if(b%i==0) { sb=sb+i+b/i; if(i*i==b)sb=sb-i; } if(a==sb && b==sa && a<b) printf("%d %d\n",a,b); } return 0; }
- 1
信息
- ID
- 37
- 时间
- 3000ms
- 内存
- 128MiB
- 难度
- 7
- 标签
- 递交数
- 940
- 已通过
- 207
- 上传者