【BZOJ 1041】圆上整点
1.题目链接。给定半径,找一下这个圆上有多少个整点。其实也就是格点。
2.这个题目其实是比较有意思的,做法也有很多种。比较常规的解法是:
到这里其实就好办了,因为x是一个平方数,A,B互质,所以A,B也应该是一个平方数。
所以枚举2*r的因子,然后计算数量即可。
其实这个题目里面涉及到了一些比较有趣的东西:首先是一个结论:
然后这个题目更深层次的涉及到了高斯素数,有兴趣的可以学习一下。
#include<bits/stdc++.h>
using namespace std;
#define ll long long
int res;
#pragma warning(disable:4996)
ll gcd(ll a, ll b)
{return b == 0 ? a : gcd(b, a % b);
}
bool check(ll n)
{ll sq = sqrt(n);return sq * sq == n;
}
void solve(ll rr)
{for (ll i = 1;i*i<= rr; i++){ll t = rr - i * i;if (!check(t))continue;ll j = sqrt(rr - i * i);if (i >= j)break;if (gcd(i*i, t) == 1)res++;}
}
int main()
{ll r;scanf("%lld", &r);res = 1;r <<= 1;for (ll d = 1;d*d <= r; d++){if (r% d != 0) continue;solve(r / d);if (d*d== r) break;solve(d);}printf("%d\n", res << 2);return 0;
}
【BZOJ 1041】圆上整点相关推荐
- BZOJ 1041 圆上的整点 数学
题目链接: https://www.lydsy.com/JudgeOnline/problem.php?id=1041 题目大意: 求一个给定的圆(x^2+y^2=r^2),在圆周上有多少个点的坐标是 ...
- [BZOJ 1041] 圆上的整点
Description 求一个给定的圆( x2+y2=r2 x 2 + y 2 = r 2 x^2+y^2=r^2),在圆周上有多少个点的坐标是整数 Input 只有一个正整数 n n n,n≤200 ...
- Peekaboo(2019年上海网络赛K题+圆上整点)
目录 题目链接 题意 思路 代码 题目链接 传送门 题意 你的位置在\(O(0,0)\),\(A\)的位置为\((x_1,y_1)\),\(B\)的位置为\((x_2,y_2)\),现在已知\(a=O ...
- 2019 ICPC 上海站网络赛 K.Peekaboo (圆上整点)
https://nanti.jisuanke.com/t/41421 题意:给定平面上两个点到原点之间的距离aaa和bbb以及这两点之间的距离ccc,且这两点的坐标均是整数,求该两点可能的坐标,按字典 ...
- bzoj 1041: [HAOI2008]圆上的整点
1041: [HAOI2008]圆上的整点 Time Limit: 10 Sec Memory Limit: 162 MB Submit: 2838 Solved: 1238 [Submit][S ...
- bzoj千题计划127:bzoj1041: [HAOI2008]圆上的整点
http://www.lydsy.com/JudgeOnline/problem.php?id=1041 设 X>0 ,Y>0 X^2 + Y^2 = R^2 X^2 = R^2-Y^2 ...
- BZOJ 4544: 椭圆上的整点
Sol 数学. 跟圆上的整点一样...TA写了个积性函数的算法...以后再说吧... \(x^2+3y^2=r^2\) \(3y^2=r^2-x^2\) \(3y^2=(r-x)(r+x)\) \(y ...
- 有限覆盖定理证明区间套_圆内整点问题的开普勒猜想证明,关于圆内整点问题误差项的估值E(r)=1-x,x=sin(nx)...
将圆内整点问题视为格点对于圆的最大密度填充,用开普勒猜想证明,二维平面的 圆内整点问题误差项的估值 ,圆半径的格点数表示 , , 延拓至椭圆内整点问题结合皮克定理可应用于椭圆周长计算,当短长轴之比趋于 ...
- Java黑皮书课后题第4章:*4.6(图上的随机点)编写一个程序,产生一个圆心位于(0,0)原点半径为40的圆上面的三个随机点,显示由这三个随机点组成的三角形的三个角的度数
*4.6(图上的随机点)编写一个程序,产生一个圆心位于(0,0)原点半径为40的圆上的三个随机点,显示由这三个随机点组成的三角形的三个角的度数 题目 题目概述 破题 代码 题目 题目概述 *4.6(图 ...
最新文章
- 如何用asp.net向其他服务器post一条信息
- JS 活学活用正则表达式
- BeanShell自动装箱拆箱
- python spider是什么_python分布式爬虫中spider_Worker节点指的是什么
- SQL数据导入mongodb
- 进销存excel_进销存报表还再花钱买软件?别傻了!教你一个Excel函数就能搞定...
- 技术人物:张亚勤-“智造中国”规划师(一)
- 课堂经验值管理小程序_小程序刷新课堂评价 “量子奖状”能量大
- 传奇GEE引擎版本架设
- 各种滤镜算法C语言,Photoshop入门学习之PS 滤镜算法原理——染色玻璃
- linux下启动tomcat----Cannot find ./catalina.sh
- 宜信大数据金融云==宜信==谷文栋==金融科技行业动态系列1
- 优化算法—人工蜂群算法(ABC)
- 力天创见双目客流统计方案
- 16 - 12 - 06 克鲁斯卡尔(Kruskal)算法详解
- Autofac的基本使用
- 中国各省份官方报纸数据
- 学习笔记☞ MongoDB(芒果数据库) ☞【查找,删除,操作符】
- Python小游戏 猜数字——非常有趣的小游戏
- 密码学基础:Pedersen Commitment