BZOJ 1041 HAOI 2008 圆上的整点 数学推导
来源:互联网 发布:自制电子相册软件 编辑:程序博客网 时间:2024/05/09 16:20
如果某整数
坐标轴上必有4个点,而且四象限对称,所以规定
于是
枚举并验证是否存在
#include <cstdio>#include <cmath>#define FOR(i,j,k) for(i=j;i<=k;++i)typedef long long ll;ll gcd(ll a, ll b) { return !b ? a : gcd(b, a % b); }void chk(ll x, ll &ans) { ll sx = sqrt(x / 2), a2, b, b2, a; FOR(a,1,sx) { a2 = a * a; b2 = x - a2; b = sqrt(b2); if (b * b == b2 && gcd(a2, b2) == 1 && a2 != b2) ++ans; }}int main() { ll s2r, d, a, b, ans = 0, r; scanf("%I64d", &r); s2r = sqrt(2 * r); FOR(d,1,s2r) if ((2 * r) % d == 0) chk(d, ans), chk(2 * r / d, ans); printf("%I64d", ans * 4 + 4); return 0;}
1041: [HAOI2008]圆上的整点
Description
求一个给定的圆(
Input
Output
整点个数
Sample Input
4
Sample Output
4
HINT
0 0
- BZOJ 1041 HAOI 2008 圆上的整点 数学推导
- 【BZOJ 1041】【HAOI 2008】圆上的整点 【数学】
- bzoj 1041: [HAOI2008]圆上的整点 【数学 思维】
- bzoj 1041: [HAOI2008]圆上的整点 (数学)
- BZOJ 1045 HAOI 2008 糖果传递 数学推导
- [数学] BZOJ 4544 椭圆上的整点
- bzoj 1041 圆上的整点
- bzoj 1041 圆上的整点
- 【BZOJ 1041】 [HAOI2008]圆上的整点
- bzoj 1041: [HAOI2008]圆上的整点
- BZOJ 1041: [HAOI2008]圆上的整点
- 【BZOJ】1041: [HAOI2008]圆上的整点
- [BZOJ 1041] 圆上的整点
- bzoj 1041: [HAOI2008]圆上的整点
- bzoj 1041 [HAOI2008]圆上的整点
- BZOJ 1041 [HAOI2008] 圆上的整点 题解与分析
- BZOJ 1041 HAOI2008 圆上的整点 数论
- BZOJ系列1041《[HAOI2008]圆上的整点》题解
- JavaScript 闭包
- [笔记] PhantomJS爬虫小记
- bzoj 2843 极地旅行社
- 文章标题
- day10 response 和 request 案例练习
- BZOJ 1041 HAOI 2008 圆上的整点 数学推导
- 03-树3 Tree Traversals Again (25分)
- Android定时器实现
- 5-16 两个有序链表序列的交集 (20分)
- Android5.0 之 TabLayout配合ViewPager实现界面切换
- POJ 3273 Monthly Expense
- 5-17 The World's Richest (25分)
- python 把文件中每列的第一个值作为字典中的key键值索引
- iOS系统键盘和自定义键盘的切换