博客
关于我
1063 计算谱半径 (20 分)
阅读量:568 次
发布时间:2019-03-09

本文共 890 字,大约阅读时间需要 2 分钟。

1063 计算谱半径

为了解决这个问题,我们需要计算给定点集的谱半径。谱半径是所有点到原点的距离中的最大值。通过对给定的点坐标进行计算,我们可以找到这个最大距离,然后取其平方根作为最终结果。

### 输入样例 我们需要输入多组点的坐标,计算每组点的平方距离,然后找到最大的平方距离,其开平方即为谱半径。输入样例如下:

5
0 1
2
0 -1
-1
0 0
3
3 3
0
-3 0

### 输出样例 经过计算,可以得到最大谱半径为:

4.24

解题思路

  • 输入处理:读取输入数据,初始化最大值变量。
  • 数据处理:对每组点坐标计算其平方距离。
  • 比较与更新:如果当前计算的平方距离大于已记录的最大值,则更新最大值。
  • 结果输出:计算并输出最大谱半径。
  • 代码实现

    #include 
    #include
    using namespace std; int main() { int N, a, b, Max; // 从标准输入读取数据 cin >> N; cin >> a >> b; Max = a*a + b*b; // 已经读取了第一组数据,剩下的进行处理 while (--N) { cin >> a >> b; int Tmp = a*a + b*b; if (Tmp > Max) Max = Tmp; } // 计算并输出谱半径 sqrt(Max); return 0; }

    代码解释

    • 读取输入:首先读取点的数量N,然后读取每组点的坐标。
    • 初始化最大值:将第一组点的平方距离赋值给Max
    • 循环处理:从N-1开始循环,读取每组点的坐标,计算其平方距离,并与当前最大值比较,更新最大值。
    • 输出结果:打印最大谱半径,计算并显示其开平方后的值。

    通过以上步骤,我们可以轻松地计算出给定点的谱半径。这个方法简单直接,适合处理点集的谱半径问题。

    转载地址:http://zeipz.baihongyu.com/

    你可能感兴趣的文章
    poj2478欧拉函数
    查看>>
    poj2546
    查看>>
    POJ2728 Desert King
    查看>>
    POJ2794 Double Patience[离散概率 状压DP]
    查看>>
    poj2828(线段树查找序列第k小的值)
    查看>>
    POJ2891:Strange Way to Express Integers——题解
    查看>>
    poj3045 Cow Acrobats(二分最大化最小值)
    查看>>
    poj3061 Subsequence(尺取法)
    查看>>
    poj3074 DLX精确覆盖
    查看>>
    poj3252(组合数)
    查看>>
    Qt笔记——QToolBox开发简易QQ聊天界面
    查看>>
    poj3307
    查看>>
    Qt笔记——QString与隐式共享、MVC架构
    查看>>
    Qt笔记——QSemaphore处理生产者/消费者模式
    查看>>
    Qt笔记——QMutex&QWaitCondition处理生产者消费者模式
    查看>>
    Qt笔记——QLable+QPixmap图片缩放踩坑
    查看>>
    Qt笔记——foreach与forever
    查看>>
    QT程序怎么挪到Linux下,linux+Qt程序如何打包发布
    查看>>
    Qt知识:视图框架QGraphicsWidget详解
    查看>>
    SpringBoot中项目启动及定时任务缓存数据库常用数据至内存变量并转换后高频调用
    查看>>