LQ0116 方格计数数学计算
Posted 海岛Blog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LQ0116 方格计数数学计算相关的知识,希望对你有一定的参考价值。
题目来源:蓝桥杯2018初赛 Java A组I题
题目描述
如图所示,在二维平面上有无数个1x1的小方格。
我们以某个小方格的一个顶点为圆心画一个半径为 50000 的圆。
你能计算出这个圆里有多少个完整的小方格吗?
输出格式
输出一个整数表示答案
问题分析
计算时间比较长,需要离线计算,最后将结果直接输出。
用条件编译来实现。
AC的C语言程序如下:
/* LQ0116 方格计数 */
#include <stdio.h>
typedef long long LL;
//#define DEBUG
#define N 50000LL
int main()
#ifdef DEBUG
LL cnt = 0;
for (LL i = 1; i <= N; i++)
for (LL j = 1; j <= N; j++)
if (i * i + j * j > N * N)
break;
cnt++;
printf("%lld\\n", cnt * 4);
#else
printf("7853781044\\n");
#endif
return 0;
以上是关于LQ0116 方格计数数学计算的主要内容,如果未能解决你的问题,请参考以下文章