TB椰程 TypeBuddy 打字搭子

练31.3 画图

C++语法 · 循环结构 · 代码 · cpp · 难度 3/5 · 共 516 字

统计圆心距不超过半径的点的个数

  • C++语法
  • 练习

正文

// 原题:https://oj.yecheng.tv/p/P191
// 题意:平面上 n 个点和一个圆
//       (圆心 X,Y 半径 R),求圆内及圆上的点数。
// 思路:点到圆心的距离平方
//       与半径平方比较,避免开方。
#include <iostream>
using namespace std;

int main() {
    int n;
    cin >> n;
    long long X, Y, R;
    cin >> X >> Y >> R;
    int cnt = 0;
    for (int i = 0; i < n; i++) {
        long long x, y;
        cin >> x >> y;
        // 距离平方 <= 半径平方即被覆盖
        long long dx = x - X, dy = y - Y;
        if (dx * dx + dy * dy <= R * R) cnt++;
    }
    cout << cnt << endl;
    return 0;
}

C++语法 · 循环结构的其它内容

打字首页 · 词库画廊 · 编程打字 · 指法入门 · 天梯榜 · 数据分析 · 班级课堂 · 关于我们
椰程 TypeBuddy 打字搭子 —— 键盘指法练习 · 单词记忆 · 班级课堂 · 在线 PK