bzoj1041: [HAOI2008]圆上的整点
来源:互联网 发布:厦大网络教学平台登录 编辑:程序博客网 时间:2024/05/22 14:18
题面在这里
emmmm先来吐槽一下下~
%一发dsy上0ms的大佬们。。。
我就比较弱辣要200+ms,,QwQ
做法:
来做一些鬼畜的变形= =
设
则
因为
设
则
两式相加得
所以我们可以考虑枚举
至此,我们求出某一象限内的个数,因为要四个象限,于是答案
再加上坐标轴的
/************************************************************* Problem: bzoj 1041 [HAOI2008]圆上的整点 User: fengyuan Language: C++ Result: Accepted Time: 276 ms Memory: 1300 kb Submit_Time: 2017-12-14 19:52:42*************************************************************/#include<bits/stdc++.h>#define rep(i, x, y) for (int i = (x); i <= (y); i ++)#define down(i, x, y) for (int i = (x); i >= (y); i --)#define mid ((l+r)/2)#define lc (o<<1)#define rc (o<<1|1)#define pb push_back#define mp make_pair#define PII pair<int, int>#define F first#define S second#define B begin()#define E end()using namespace std;typedef long long LL;//headLL r;inline LL gcd(LL a, LL b){ return !b ? a : gcd(b, a%b); }int main(){ scanf("%lld", &r); LL ans = 0; rep(i, 1, floor(sqrt(2*r))) if (2*r % i == 0){ LL d = i; rep(j, 1, floor(sqrt(2*r/d))){ LL a = j; LL b = sqrt(2*r/d-a*a); if (a*a + b*b != 2*r/d || gcd(a, b) != 1 || b <= a) continue; ans ++; } if (d*d == 2*r || d == 1) continue; d = 2*r/d; rep(j, 1, floor(sqrt(2*r/d))){ LL a = j; LL b = sqrt(2*r/d-a*a); if (a*a + b*b != 2*r/d || gcd(a, b) != 1 || b <= a) continue; ans ++; } } printf("%lld\n", ans*4+4); return 0;}
阅读全文
0 0
- 【BZOJ1041】[HAOI2008]圆上的整点 数学
- [BZOJ1041]HAOI2008圆上的整点
- 【HAOI2008】【BZOJ1041】圆上的整点
- 【BZOJ1041】[HAOI2008]圆上的整点【数学】
- [BZOJ1041][HAOI2008]圆上的整点
- bzoj1041: [HAOI2008]圆上的整点
- [枚举] BZOJ1041: [HAOI2008]圆上的整点
- bzoj1041: [HAOI2008]圆上的整点
- bzoj1041[HAOI2008]圆上的整点
- [BZOJ1041] [HAOI2008]圆上的整点
- 【bzoj1041】[HAOI2008]圆上的整点
- bzoj1041 [HAOI2008]圆上的整点
- BZOJ1041 [HAOI2008]圆上的整点 【数学】
- bzoj1041: [HAOI2008]圆上的整点
- bzoj1041 [HAOI2008]圆上的整点 gcd
- BZOJ1041: [HAOI2008]圆上的整点
- BZoj1041 [HAOI2008]圆上的整点 数学 勾股数
- [BZOJ1041][HAOI2008][数学乱搞]圆上的整点
- 小技巧——如何为foxmail中的文字编辑超链接
- Python画图
- python time datetime 使用
- otter系列—otter 基本介绍
- 740. Delete and Earn
- bzoj1041: [HAOI2008]圆上的整点
- Decorator函数
- 【Java学习笔记】父类引用指向子类对象之属性
- NDK开发系列二
- Hadoop读书笔记(一)——Hadoop分布式文件系统
- CS231n A2: Global name 'col2im_6d_cython' is not defined解决(Mac)
- python dict常用
- R语言UTF-8各种问题解决方法
- TypeError: data type "datetime" not understood