codeforces 935C. Fifa and Fafa(圆)

MTK Meta ISP 工具使用技巧与参数读取路径全解析 在联发科(MediaTek, MTK)平台上进行相机图像调试时,Meta ISP 工具是连接 PC 与设备进行参数调整、寄存器读取和图像输出的重要工具。本文以实战角度出发,系统梳理 Meta ISP 的使用流程、关键模块功能、典型调试技巧与参数读取路径,结合最新版平台(如MTK Genio/Dimensity 系列)架构,帮助工程师掌握联发科图像调优的核心流程。 阅读详情

 

题目链接 codeforces 935 C

题意:

给一个半径,两个点求圆过第二个点的最大外切圆,如果第二个点在圆外,直接输出第一个点和半径

题解

以第二个点为起点,过第二个点做一条射线,交于圆上,长度即为所求直径,然后求出点的坐标

1.圆的方程 (x - a) * (x - a) + (y - b) * (y - b)  = r *r

2.求根公式  x = ( -b + sqrt(b * b - 4 * a * c)) / 2 * a

我的做法,刚开始需要判断两个横坐标,保证不会除0,wa 1

#include <bits/stdc++.h>
typedef long long ll;
using namespace std;
const double eps = 1e-4;
int main(){
   double R, x1, y1, x2, y2, xjiao, yjiao;
   cin >> R >> x1 >> y1 >> x2 >> y2;
   if(x1 != x2){
   	double k = (y1 - y2) / (x1 - x2);   // 直线斜率
	   double c = y1 - (k * x1);       // 直线截距
	   double a = 1+k*k;
	   double b = 2*k*c-2*y1*k-2*x1;
	   double d = y1 * y1 + c * c + x1 * x1 - R * R - 2 * y1 * c; 
	   double xjiao1 = (sqrt(b*b-4*a*d) -(b))/(2*a);      // 计算两个交点的横坐标
	   double xjiao2 = (-sqrt(b*b-4*a*d) -(b))/(2*a);
	   if(x1 > x2){
	   	if(xjiao1 > xjiao2){    // 判断圆放在哪边
	   		xjiao = xjiao1;
			}
			else{
				xjiao = xjiao2;
			}
			yjiao = xjiao * k + c;
		}
		else if(x1 < x2){
			if(xjiao1 < xjiao2){
	   		xjiao = xjiao1;
			}
			else{
				xjiao = xjiao2;
			}
			yjiao = xjiao * k + c;
		}
	}
	else{                        // 横坐标相同,比较纵坐标
		xjiao = x1;
		double yjiao1 = R + y1;
		double yjiao2 = -R + y1;
		if(y1 > y2){
			yjiao = max(yjiao1, yjiao2);
		}
		else{
			yjiao = min(yjiao1, yjiao2);
		}
	}
	xjiao = (xjiao + x2) / 2;
	yjiao = (yjiao + y2) / 2;
	double len = sqrt((xjiao-x2) * (xjiao-x2) + (yjiao-y2) * (yjiao-y2));
	if(len > R){                // 第二个点在圆外
		len = R;
		xjiao = x1;yjiao = y1;    // 横纵坐标等于第一个圆的横纵坐标
	}
	printf("%.15lf %.15lf %.15lf\n", xjiao, yjiao, len);
   return 0;
}

 别人做法:求坐标时,用相似三角形,简单10倍

#include<bits/stdc++.h>
#define ll long long
using namespace std;
const int N=1e7+100;
double dis(double x1,double y1,double x2,double y2){ // 计算两点坐标
    return (x1-x2) * (x1-x2) + (y1-y2) * (y1-y2);
}
int main(){
   double r,x1,x2,y1,y2;
   cin>> r >> x1 >> y1 >> x2 >> y2;
   double len = dis(x1,y1,x2,y2);
   if(len >= r*r){                          // 第二个点在圆外,直接输出点坐标和半径
      cout<< x1 << ' ' << y1 << ' ' << r <<endl;
   }
   else if(x1 == x2 && y1 == y2){         // 横纵坐标相等,采用横坐标缩短一半或纵坐标缩短一半
      cout<< x1+r/2 << " " << y1 << ' ' << r/2 <<endl;
   }
   else{
      double Z = sqrt(len);
      double R = (Z+r) / 2;         // 直接求半径,这步好好想想,看图就很简单
      cout<< (x1-x2)*R/Z+x2 << ' ' << (y1-y2)*R/Z+y2 <<' '<< R <<endl;// 相似三角形求点坐标
                                            // 看上图
   }
   return 0;
}

   

嵌入式工程师必学(118):MCU的硬件定时器和中断 大多数微处理器都有一个或多个可编程硬件定时器,这些定时器包括对中断的支持。可以有不同类型的计时器,用于不同的应用程序。例如,LPC1768 具有四个 32 位通用定时器、一个看门狗定时器、一个重复中断定时器、一个系统滴答定时器、一个正交编码器接口、6 个 PWM 输出和一个支持中断的实时时钟。硬件定时器用于计时和计数作,允许处理器在 timer 进程运行时继续执行其他进程。硬件定时器是一种使用 clock 信号来增加 register 的电路。 阅读详情

相关推荐

本地部署DeepSeek连接MATLAB:打造私有化AI编程助手全攻略

大型语言模型(LLM)通过理解自然语言生成代码、解释技术概念,其核心原理是基于海量数据训练的Transformer架构。这项技术为工程计算和数据分析带来了效率革命,尤其在代码生成、调试辅助和文档自动化等场景价值显著。开源模型如DeepSeek-coder凭借优秀的代码理解能力,结合Ollama提供的本地化部署方案,实现了完全离线、低延迟的私有化部署。通过配置国内镜像加速下载,并利用MATLAB内置的HTTP通信函数构造API请求,工程师可以在熟悉的MATLAB环境中直接调用本地模型,处理数据清洗、算法验证等

weixin_30239339的博客 516

Codeforces Round #465 (Div. 2) C. Fifa and Fafa(计算几何)

描述 Fifa and Fafa are sharing a flat. Fifa loves video games and wants to download a new soccer game. Unfortunately, Fafa heavily uses the internet which consumes the quota. Fifa can access t...

riba2534的博客 1416

【论文笔记】Reaching agreement in the presence of faults (EIG)

1 问题定义 2 交互一致性 3 单点故障 m=1 n=4 4 多点故障(n&amp;gt;=3m+1) 计算过程 m=2 n=7 5 n&amp;lt;3m+1不能达成协定 6 带认证的算法 7 总结 这篇论文在1980年发表,是1982年著名的拜占庭将军问题论文的前身。作者Leslie Lamport是2013图灵奖得主,两篇论文引用次数分别为5000+和2000+。该论文提出的算法现在被...

zjwreal 2993

Codeforces Round #465 (Div. 2) C. Fifa and Fafa (SB题)

题意是这样的:在大圆里找一个小圆,这个圆要求在不包括一个点的前提下,尽可能的大,输出圆心坐标和半径 比赛的时候很遗憾……差一点就A了,我们先来判断我们不包括的点的情况,如果这个点在圆的外面,那问题就很简单了,只要输出大圆就行 如果这个点在大圆内,那我们先考虑一般情况: p点是我们不想包括的点,这个圆就是以p点到大圆圆心的延长线与大圆的交点为直径的圆,直径是p点和圆形的距离加上半径,小圆的...

limn204的专栏 276

stm32控制舵机_使用URT-1控制飞特舵机上手教程(SM40BL舵机为例)

使用URT-1控制飞特舵机上手教程(SM40BL舵机为例):1,参阅URT-1使用说明.pdf2, 材料清单:① URT-1驱动板② 连接驱动板与电脑的MINI USB 连接线③ 给舵机供电的电源④ 舵机与舵机连接线⑤ 杜邦线(可选)3,将URT-1驱动板与电脑连接4,安装驱动,参阅文件CH340驱动,检查设备管理器串口号。5,舵机连接URT-1驱动板,驱动板接电源,参考下图:6,打开FD软件进行...

weixin_39564510的博客 3431

Wonderware Intouch 2014R2 SP1 安装教程

下载Wonderware System Platform 2014R2 SP1 and Intouch 2014R2 SP1的安装压缩包,如下 软件的下载连接地址如下: https://pan.baidu.com/s/1a2GnI_nfT3vK1l49B94FIQ, 提取码:6ec6 或者直接微信扫描下面的二维码 管理员运行下面的setup.exe可执行程序, 进入安装,选择Product Based Selection, 自定义选择需要安装的程序,如下: 普通的Into

工控先生 3万+

codeforces 935 C. Fifa and Fafa

圆内的小数计算

toby的博客 644

保姆级教程:用Ubuntu 22.04搭建RustDesk中继服务器(含Cloudflare避坑指南)

本教程详细指导如何在Ubuntu 22.04上搭建RustDesk中继服务器,解决跨国远程协作的延迟问题。涵盖环境配置、Rust编译优化、服务部署及Cloudflare代理设置等关键步骤,帮助用户实现高性能的私有中继服务。

weixin_29002209的博客 526

CF(935C - Fifa and Fafa)

题目链接:点击打开链接题目大意:   给出一个圆形房间的圆心坐标(x1,y1)和半径 r ,给出另一个点A坐标(x2,y2);要求求出一个不超出房间且不包含点A的最大的圆M,输出圆M的x,y坐标和半径(特别地,当A位于圆M上时,被认为不在圆M 内)题目分析:1.当点A位于圆形房间外时,直接输出圆形房间就好2.当点A与圆形房间的圆心重合时,我们只需要输出一个半径为r/2的,圆心位于以A为圆心以r/2...

Tmotfl的博客 916

SolidWorks + AI:利用 DeepSeek AI 自动生成 VBA Macro 宏,实现智能化建模!

本教程介绍如何将集成到插件,实现的自动化操作。通过 DeepSeek AI,您可以快速生成高效的,提升!💡。

SolidWorksAPI的专栏 1万+

VS2015与QT界面开发中解决‘ui_xxx.h‘文件类名不一致导致的编译错误

本文详细解析了在VS2015与QT界面开发中,因.ui文件顶层部件objectName与生成类名不一致导致'ui_xxx.h'文件出现'不完整的类型'编译错误的根本原因。通过分步排查,指导开发者统一Qt设计师对象名、自动生成文件类名及代码引用名,并提供强制重新编译UI文件、清理中间文件等解决方案,有效解决此类常见编译问题。

weixin_29009339的博客 248

Codeforces Round #465 (Div. 2) C. Fifa and Fafa

题目链接:点击打开链接题意:给定一个圆位于(x1, y1),半径为R,再给定平面上任意一点(x2, y2),在圆内找一点画一个半径为r的圆,使得该圆将该点包含在园内(可以在边界)且使得大圆内不属于小圆部分面积最小。思路:若(x2, y2)在圆外,则所求圆即大圆。若(x2, y2)在圆内,则所求圆圆心在(x2, y2)与大圆圆心连线处。采用二分法寻找小圆圆心与(x2, y2)的距离(即半径r),使得...

LFhase‘s Blog 706

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

【CodeForces 935C --- Fifa and Fafa】几何 || 圆

【CodeForces 935C --- Fifa and Fafa】几何 || 圆 题目来源:点击进入【CodeForces 935C — Fifa and Fafa】 Description Fifa and Fafa are sharing a flat. Fifa loves video games and wants to download a new soccer game. Unfo...

来日浅谈的博客 650

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Codeforces 935 C Fifa and Fafa

935 C 题意:Fifa想用wifi下载足球游戏, 但是Fafa是个流浪狂魔, 所以Fifa想让他的wifi在公寓里尽量覆盖最大的面积,并且不覆盖到Fafa和公寓外的人,fafa的坐标可以在公寓外。 题解:求半径最大的地方就好了, 这个半径最大的位置一定在Fafa和公寓中心的连线上(前提是Fafa不和公寓中心重合且fafa在公寓范围内)。 代码: 1 #includ...

dengpangbu3703的博客 185

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Codeforces 935C Fifa and Fafa 题解 附平面几何基础:平面向量基本运算

一路过去好像平面向量也是必学的知识,毕竟用初中知识解题的日子已经过去了.我们来看一个例题. Codeforces 935C Fifa and Fafa 这个题是求一个圆之中不覆盖某点(x,y)的最大圆的圆心坐标和半径.(在圆上算不覆盖) 思路:首先判断某点是不是在圆外,如果在圆外直接输出圆的各项数值. 如果不是,很明显就是找出该点p与圆心连线延长线与圆的交点q,然后输出pq中点坐标和pq距...

Fuko_Ibuki的博客 1万+

codeforces 935C Fifa and Fafa

C. Fifa and Fafatime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputFifa and Fafa are sharing a flat. Fifa loves video games and wants to download a ne...

kolmikl 701

codeforces 935-C.Fifa and Fafa(几何)

http://codeforces.com/problemset/problem/935/C 题目大意: 给出一个圆的圆心和半径,另外再给出一个点,问在这个圆内求一个最大的圆保证这个点不在这个圆内(可以在圆上),求圆的圆心和半径。 解题思路: 利用相似三角形,先判断圆心和点的距离大于半径和两点重合的情况,再结合相似求出圆心即可。 #include&lt;iostream&gt; #inc...

HJ 415

Codeforces-935C:Fifa and Fafa

C. Fifa and Fafatime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputFifa and Fafa are sharing a flat. Fifa loves video games and wants to download a ne...

Mitsuha_的博客 984

Codeforces 935C Fifa and Fafa

题意:    一直小A和小B是室友同住在一个公寓之中,但是小A不想要小B蹭自己的wifi。现在知道小B所在点求小A把wifi安装在哪里可以使得覆盖公寓的半径最大。 代码: #include&lt;bits/stdc++.h&gt; using namespace std; double R; double sqt(double a,double b,double c,double d) { ...

努力打工 366

CodeForces 935C Fifa and Fafa 计算几何

题意:    小A与小B住在同一个公寓,小B不想让小A用自己的wifi,问小B应该把wifi放在哪里能使得小A用不到且覆盖公寓的面积最大,输出wifi位置,覆盖半径分析:    A点到圆心O 的直线交公寓边的点B,AB的中点就是圆心 |AB|/2就是半径我们可以用AO方向上的单位距离分别在x,y轴上表示多少来算。bug点:1.小A电脑可能不在公寓内2.小A电脑如果在公寓中间需要特判否则会/0代码:...

努力打工 314

Codeforces Round #465 &935C. Fifa and Fafa计算几何

传送门 题意:在平面中,有一个圆,有一个点,问能在这个圆中围出最大的圆的圆心坐标和半径。要求这个最大圆不包含这个点。 思路:比较基础的计算几何,要分三种情况,第一种就是这个点在圆外的情况。第二种是点在圆内。第三种是这个点和圆心重合。 ac代码 #include <iostream> #include <cstdio> #include <al...

weixin_30412577的博客 164

Codeforces Round #465 (Div. 2) C. Fifa and Fafa(圆问题,数论)

C. Fifa and Fafatime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputFifa and Fafa are sharing a flat. Fifa loves video games and wants to download a ne...

WhaleFall 732

CF 935 C. Fifa and Fafa 几何(贪心,相似)

题意:给出圆心(x1,y1)及其半径R的圆A. 和一个非法点(x2,y2)B  求出一组(x,y,r)使得其覆盖的范围在圆内 要求不能覆盖非法点 并且覆盖的面积为最大. 0 新的圆C(x,y,r)肯定和点B已经和圆A相切 否则可以扩大半径 偏移圆心使得 覆盖面积增大. 落在圆A上的切点Q肯定圆上离点B最远点,则BQ经过圆A的半径 同样经过圆C的半径  画图得r=(R+dis)/2

noone0的博客 278

s5pv210 uboot-2012-10移植(三) 之支持SPL

上次的uboot的BL1是自己实现的,今天就来让uboot-2012-10支持SPL功能,但不是完全用的uboot本身的代码,也不知道这样是好还是坏。 1.分析顶层目录的Makefile可以知道,需要添加CONFIG_SPL配置,这在前面的已经说过了,跟踪start.S代码,得知编译需要arch/arm/lib/spl.c文件,查看arch/arm/lib/Makefile得知,需要添加CONF

者高的专栏 4909

cf935B

B. Fafa and the Gates time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output Two neighboring kingdoms decided to b

Every Master was once a disaster or beginner. 355
上一篇: codeforces 1C. Ancient Berland Circus(三角形面积,多边形面积,圆心角)
下一篇: codeforces 140 A. New Year Table(圆,圆心角,精度)
error0318
博客等级 码龄9年 57粉丝 515原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值