当前位置: 首页 > article >正文

整点(枚举)

Hello!大家好!我是@学霸小羊,今天分享一道c++枚举题:

题目描述

在二维坐标系, 有一个圆,圆心在(0,0),圆的半径是r。问圆内有多少个整点(所谓的整点就是横坐标和纵坐标都是整数的点)。
若点P的横坐标是整数a,纵坐标是整数b,那么只要满足aa + bb <= r*r, 那么P就是圆内的整点。

输入格式

多组测试数据。 第一行,一个整数G,表示有G组测试数据。1 <= G <= 10。
每组测试数据格式:
一个整数r。 1<=r<=100。

输出格式

共G行,每行一个整数。

样例

输入数据 1

5
1
2
3
47
96

输出数据 1

4
12
28
6920
28916

AC代码

#include<bits/stdc++.h>
using namespace std;
int g,r,ans;
int main()
{
    cin>>g;
    while(g--)//n组测试数据 
    {
    	ans=0;
        cin>>r;
        for(int i=-r;i<=r;i++)//枚举横坐标 
        {
            for(int j=-r;j<=r;j++)//枚举纵坐标 
            {
                if(i*i+j*j<=r*r)ans++;//判断是否符合要求 
                //题目中给出了条件:“若点P的横坐标是整数a,纵坐标是整数b,那么只要满足aa + bb <= r*r, 那么P就是圆内的整点。” 
            }
        }
		cout<<ans-1<<endl;
    }
    return 0;
}

这题其实很简单,利用题目中给出的条件,再枚举a,b。

这题的关键在于a,b的范围,并不是0~r,而是-r~r!

你学废了吗?


http://www.kler.cn/a/443796.html

相关文章:

  • ruoyi 请求参数类型不匹配,参数[giftId]要求类型为:‘java.lang.Long‘,但输入值为:‘orderGiftUnionList
  • Qt:QMetaObject::connectSlotsByName实现信号槽自动关联
  • 【读书笔记】《论语别裁》寂寞的享受
  • 前端脚手架技术精讲 (1)
  • Windows脚本清理C盘缓存
  • 学生管理系统,增加教师管理,班级管理,角色功能权限管理
  • React 19有哪些新特性?
  • WPF+MVVM案例实战与特效(四十四)- WPF多语言支持全解析:轻松实现国际化应用
  • List;Set;Map集合
  • C++总结联想文档
  • Leetcode3266:K 次乘运算后的最终数组 II
  • TanStack——为现代前端开发提供高性能和灵活的工具
  • 应用程序设置开机自启动
  • MyBatis-Plus(一)
  • 论文笔记:是什么让多模态学习变得困难?
  • Vmware 安装Ubuntu系统 服务器版本
  • 盈养科技二面
  • 3D可视化引擎HOOPS Visualize与HOOPS Luminate Bridge的功能与应用
  • 低比特语言模型 是一种利用较少比特数进行语言建模的技术
  • Nginx(Linux之Ubuntu)
  • 力扣hot100——矩阵
  • 领域驱动设计的学习分享
  • xmlrpc.php有什么用以及为何建议禁用
  • 【数据集】生菜病害检测数据集530张6类YOLO+VOC格式
  • ES6学习Symbol(五)
  • C语言与C++