2 条题解
-
0
#include <bits/stdc++.h> using namespace std; int n, m, l, r; long long ans; int gcd(int a, int b) { return a % b == 0 ? b : gcd(b, a % b); } int main(void) { scanf("%d%d%d%d", &n, &m, &l, &r); for(int i=1; i<=n; i++) for(int j=1; j<=m; j++) if(gcd(i, j) == 1 && i*i + j*j >= l*l && i*i + j*j <= r*r) ans += 2 * (n - i + 1) * (m - j + 1); if(l == 1) ans += n * (m + 1) + (n + 1) * m; printf("%lld\n", ans); return 0; } -
0
#include<bits/stdc++.h> using namespace std; int n,m,l,r; long long ans; int gcd(int a,int b) { return a%b==0?b:gcd(b,a% b); } int main(void) { scanf("%d%d%d%d",&n,&m,&l,&r); for(int i=1;i<=n;i++) for(int j=1;j<=m;j++) if(gcd(i,j)==1&&i*i+j*j>=l*l&&i*i+j*j<=r*r) ans+=2*(n-i+1)*(m-j+1); if(l==1) ans+=n*(m+1)+(n+1)*m; printf("%lld\n",ans); return 0; }
- 1
信息
- ID
- 1578
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 7
- 标签
- 递交数
- 53
- 已通过
- 14
- 上传者