news 2026/11/4 16:59:09

《P4035 [JSOI2008] 球形空间产生器》

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
《P4035 [JSOI2008] 球形空间产生器》

题目描述

有一个球形空间产生器能够在 n 维空间中产生一个坚硬的球体。现在,你被困在了这个 n 维球体中,你只知道球面上 n+1 个点的坐标,你需要以最快的速度确定这个 n 维球体的球心坐标,以便于摧毁这个球形空间产生器。

输入格式

第一行是一个整数 n (1≤N≤10)。接下来的 n+1 行,每行有 n 个实数,表示球面上一点的 n 维坐标。每一个实数精确到小数点后 6 位,且其绝对值都不超过 20000。

输出格式

有且只有一行,依次给出球心的 n 维坐标( n 个实数),两个实数之间用一个空格隔开。每个实数精确到小数点后 3 位。数据保证有解。你的答案必须和标准输出一模一样才能够得分。

输入输出样例

输入 #1复制

2 0.0 0.0 -1.0 1.0 1.0 0.0

输出 #1复制

0.500 1.500

说明/提示

提示:给出两个定义:

  1. 球心:到球面上任意一点距离都相等的点。
  2. 距离:设两个 n 维空间上的点 A,B 的坐标为 (a1​,a2​,⋯,an​),(b1​,b2​,⋯,bn​),则 A,B 的距离定义为:dist=(a1​−b1​)2+(a2​−b2​)2+⋯+(an​−bn​)2​。

代码实现:

#include<bits/stdc++.h> #define reg register const int mn = 15; int n; double a[mn][mn]; double b[mn][mn]; int main(){ scanf("%d", &n); for(reg int i = 1; i <= n+1; i ++) for(reg int j = 1; j <= n; j ++) scanf("%lf", &b[i][j]); for(reg int i = 1; i <= n; i ++){ for(reg int j = 1; j <= n; j ++) a[i][j] = 2.0*(b[i+1][j] - b[i][j]); a[i][n+1] = 0; for(reg int j = 1; j <= n; j ++) a[i][n+1] += (b[i][j]+b[i+1][j])*(b[i+1][j] - b[i][j]); } for(reg int i = 1; i <= n; i ++){ int mid = i; for(reg int j = i+1; j <= n; j ++) if(fabs(a[mid][i]) < fabs(a[j][i])) mid = j; std::swap(a[i], a[mid]); double t = a[i][i]; for(reg int j = i; j <= n+1; j ++) a[i][j] /= t; for(reg int j = i+1; j <= n; j ++){ t = a[j][i]; for(reg int k = i; k <= n+1; k ++) a[j][k] -= a[i][k] * t; } } for(reg int i = n; i >= 1; i --) for(reg int j = i+1; j <= n; j ++) a[i][n+1] -= a[i][j]*a[j][n+1]; for(reg int i = 1; i <= n; i ++) printf("%.3lf ", a[i][n+1]); return 0; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/11/2 1:58:26

Thinkphp和Laravel基于的农产品预售商城 平台设计_v8557农户_

目录 设计思路技术架构功能模块安全与优化 项目开发技术介绍PHP核心代码部分展示系统结论源码获取/同行可拿货,招校园代理 设计思路 农产品预售商城平台基于ThinkPHP和Laravel框架开发&#xff0c;旨在连接农户与消费者&#xff0c;实现农产品的直接预售。平台设计围绕农户&am…

作者头像 李华
网站建设 2026/11/2 2:00:01

2026毕设ssm+vue旅游攻略网站系统论文+程序

本系统&#xff08;程序源码&#xff09;带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容一、选题背景关于旅游信息化管理问题的研究&#xff0c;现有研究主要以传统OTA平台整体架构为主&#xff0c;专门针对基于SSMVue技术栈的轻…

作者头像 李华
网站建设 2026/11/3 7:12:58

23.FPGA设计流程

1.设计准备 进行PCB设计前需要先明确PCB的功能和接口。 设计FPGA项目和设计PCB类似&#xff0c;只是设计对象是一块芯片的内部功能结构。 本质上讲&#xff0c;FPGA的设计&#xff0c;就是IC的设计。 在动手进行代码输入前必须明确IC的功能和对外接口。 2.设计输入 复杂的…

作者头像 李华
网站建设 2026/11/2 1:59:29

深度测评9个AI论文软件,助研究生轻松搞定学术写作!

深度测评9个AI论文软件&#xff0c;助研究生轻松搞定学术写作&#xff01; AI 工具如何重塑学术写作的未来 在当前的学术研究中&#xff0c;论文写作已成为研究生阶段不可或缺的一部分。随着人工智能技术的不断进步&#xff0c;越来越多的 AI 工具开始介入这一领域&#xff0c;…

作者头像 李华
网站建设 2026/11/2 1:59:29

《MYSQL技术内幕:InnoDB存储引擎》| 锁与事务

摘要&#xff1a;本篇聚焦 InnoDB 锁与事务核心机制&#xff0c;系统讲解了各种锁机制&#xff0c;解析脏读、不可重复读等并发问题及应对方案。同时深入剖析事务 ACID 特性的底层实现&#xff08;Redo Log、Undo Log&#xff09;、隔离级别差异。 第六章 锁 6.3 InnoDB 存储引…

作者头像 李华
网站建设 2026/11/2 2:00:01

AI-大语言模型LLM-Transformer架构3-嵌入和位置编码

目的 为避免一学就会、一用就废&#xff0c;这里做下笔记 说明 本文内容紧承前文-Transformer架构1-整体介绍和Transformer架构2-自注意力&#xff0c;欲渐进&#xff0c;请循序本文重点介绍Transformer架构中的嵌入和位置编码&#xff0c;它们在编码器堆栈和解码器堆栈中都…

作者头像 李华