news 2026/10/31 14:45:38

打卡信奥刷题(3659)用C++实现信奥题 P12144 [蓝桥杯 2025 省 A] 地雷阵

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
打卡信奥刷题(3659)用C++实现信奥题 P12144 [蓝桥杯 2025 省 A] 地雷阵

P12144 [蓝桥杯 2025 省 A] 地雷阵

题目描述

小蓝正在平面直角坐标系中的第一象限里玩一个逃生小游戏。在第一象限中埋有nnn颗地雷,第iii颗地雷的坐标为(xi,yi)(x_i, y_i)(xi​,yi​),触发范围为以(xi,yi)(x_i, y_i)(xi​,yi​)为圆心,半径为rir_iri​的圆。一旦小蓝走进了圆内就会触发地雷导致游戏失败。小蓝初始在原点(0,0)(0, 0)(0,0)上,他需要在第一象限内选择一个方向一直往前走,如果能不触发任何地雷即可成功通关游戏。他想知道在[0,π2][0, \frac{\pi}{2}][0,2π​]中均匀随机选择一个方向,即在0∘0^\circ0∘(朝向xxx轴正方向)至90∘90^\circ90∘(朝向yyy轴正方向)之间随机选择一个方向,通关游戏的概率是多少?

输入格式

输入的第一行包含一个正整数nnn。

接下来nnn行,每行包含三个正整数xi,yi,rix_i, y_i, r_ixi​,yi​,ri​,相邻整数之间使用一个空格分隔。

输出格式

输出一行包含一个实数,四舍五入保留三位小数,表示答案。

输入输出样例 #1

输入 #1

1 2 2 1

输出 #1

0.540

输入输出样例 #2

输入 #2

2 1 3 1 3 1 1

输出 #2

0.181

说明/提示

评测用例规模与约定

  • 对于20%20\%20%的评测用例,1≤n≤1001 \leq n \leq 1001≤n≤100;
  • 对于所有评测用例,1≤n≤1051 \leq n \leq 10^51≤n≤105,1≤xi,yi≤1041 \leq x_i, y_i \leq 10^41≤xi​,yi​≤104,ri<min⁡(xi,yi)r_i < \min(x_i, y_i)ri​<min(xi​,yi​)。

::::info[备注]{open}
样例 #2 中出现了ri≥min⁡(li,ri)r_i \ge \min(l_i,r_i)ri​≥min(li​,ri​)的情况,违反了题目对ri<min⁡(li,ri)r_i < \min(l_i,r_i)ri​<min(li​,ri​)的限制(蓝桥杯原题面如此)。本题数据按照数据范围为准。
::::

C++实现

#include<bits/stdc++.h>usingnamespacestd;#defineendl'\n'#defineall(v)v.begin(),v.end()constdoublePI=acos(-1);voidsol(){intn;cin>>n;vector<tuple<int,int,int>>p(n);for(inti=0;i<n;i++){intx,y,r;cin>>x>>y>>r;p[i]={x,y,r};}vector<pair<double,double>>rng;for(auto&[x,y,r]:p){doublet=atan2(y,x);doubled=sqrt(x*x+y*y);doubledet=asin(r/d);doubleL=t-det,R=t+det;rng.push_back({L,R});}sort(all(rng),[&](autoa,autob){returna.first<b.first;});doubleline=0;doubleres=0;for(auto&[L,R]:rng){line=max(line,L);res+=max(0.0,R-line);line=max(line,R);}doubleans=(PI/2-res)/(PI/2);cout<<fixed<<setprecision(3)<<ans<<endl;}intmain(){ios::sync_with_stdio(false);cin.tie(nullptr);sol();return0;}

后续

接下来我会不断用C++来实现信奥比赛中的算法题、GESP考级编程题实现、白名单赛事考题实现,记录日常的编程生活、比赛心得,感兴趣的请关注,我后续将继续分享相关内容

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/31 14:44:42

10.28实习日志

测试信标接收板的波形总结&#xff1a;对于串口调试助手没有任何消息&#xff0c;则先排查串口通信问题&#xff0c;先看网口的1脚&#xff0c;再看stlink上方的RS232芯片的问题&#xff0c;看看下方原理图的TX有没有信号若是串口调试部分有内容&#xff0c;但是内容可能会出现…

作者头像 李华
网站建设 2026/10/31 14:40:34

基于SpringBoot和Vue的摇滚乐鉴赏网站

基于SpringBoot和Vue的摇滚乐鉴赏网站的设计与实现(万字文档源代码数据库脚本说明文档可远程调试) 系统介绍&#xff1a; 基于SpringBoot和Vue实现的摇滚乐鉴赏网站采用前后端分离的架构方式&#xff0c;搭配MySQL数据库&#xff0c;为B/S结构系统。系统设计了两种角色&#xf…

作者头像 李华
网站建设 2026/10/31 14:23:29

工业定制显示屏的全流程技术协作指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/31 14:23:22

Tomcat的内存优化

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/31 14:16:42

MoneyPrinterTurbo:短视频自动化生产工具全流程解析

1. 项目概述与核心定位MoneyPrinterTurbo 这个标题本身就带着一股“自动化印钞”的戏谑味道&#xff0c;但剥开这层调侃的外壳&#xff0c;它本质上是一个短视频内容自动化生产工具。我第一次看到这个名字的时候&#xff0c;脑子里蹦出来的画面是&#xff1a;一个人坐在电脑前&…

作者头像 李华
网站建设 2026/10/31 14:16:36

Chroma向量数据库:轻量化AI应用开发实践

1. Chroma向量数据库的定位与核心特性Chroma作为一款专为AI原生应用设计的轻量级向量数据库&#xff0c;其核心价值在于解决了传统数据库难以高效处理高维向量数据的痛点。与传统关系型数据库不同&#xff0c;Chroma采用向量嵌入&#xff08;Vector Embedding&#xff09;技术&…

作者头像 李华