当前位置: 首页 > news >正文

打卡信奥刷题(3236)用C++实现信奥题 P8452 「SWTR-8」15B03

P8452 「SWTR-8」15B03

题目背景

15B03 获得了 ION2064 的承办权。

题目描述

15B03 的座位非常拥挤,可以看成一张n × m n\times mn×m的网格,每个小正方形( i , j ) (i, j)(i,j)代表一张桌子。

根据规定,考场上任何两张桌子不得相邻。这里相邻指含有公共点。严格定义两张桌子( i , j ) (i, j)(i,j)( i ′ , j ′ ) (i', j')(i,j)相邻当且仅当∣ i − i ′ ∣ ≤ 1 |i - i'|\leq 1ii1∣ j − j ′ ∣ ≤ 1 |j - j'|\leq 1jj1

布置考场的任务落在小 A 头上,他希望撤去最少的桌子满足上述要求。

小 A 认为这样太简单了,因此他添加了限制:在保证撤去桌子最少的前提下,最大化剩余每张桌子到距离它最远的桌子的距离之和。这里距离指欧几里得距离:桌子( a , b ) (a, b)(a,b)( c , d ) (c, d)(c,d)的距离为( a − c ) 2 + ( b − d ) 2 \sqrt{(a - c) ^ 2 + (b - d) ^ 2}(ac)2+(bd)2

平行时空中 15B03 的规模不尽相同:多组测试数据。

请选手认真阅读本题的评分方式。

输入格式

第一行一个整数S SS,表示该测试点的编号。

第二行一个整数T TT,表示数据组数。接下来T TT组测试数据,每组数据形如:

  • 一行两个整数n , m n, mn,m

输出格式

对于每组测试数据:

  • 输出一个整数和一个实数,由空格隔开。分别表示最少撤去的桌子数量以及每张桌子到距离它最远的桌子的距离之和的最大值。

实数比较按绝对误差或相对误差不超过10 − 9 10 ^ {-9}109:令你输出的答案为a aa,标准答案为b bb,你的答案被判为正确当且仅当∣ a − b ∣ max ⁡ ( 1 , ∣ b ∣ ) ≤ 10 − 9 \frac{|a - b|}{\max(1, |b|)} \leq 10 ^ {-9}max(1,b)ab109

输入输出样例 #1

输入 #1

0 4 3 3 2 4 15 57 1064 822

输出 #1

5 11.313708499 6 6.324555320 623 10206.135788972 655956 222400384.677931725

说明/提示

「样例解释」

对于第一组询问,选择( 1 , 1 ) , ( 1 , 3 ) , ( 3 , 1 ) (1, 1), (1, 3), (3, 1)(1,1),(1,3),(3,1)( 3 , 3 ) (3, 3)(3,3)最优。撤去了3 × 3 − 4 = 5 3\times 3 - 4 = 53×34=5张桌子,且每张桌子到距离它最远的桌子的距离均为2 2 + 2 2 = 2 2 \sqrt{2 ^ 2 + 2 ^ 2} = 2\sqrt 222+22=22,因此第二问答案为8 2 8\sqrt 282。如下图所示:

对于第二组询问,选择( 1 , 1 ) (1, 1)(1,1)( 2 , 4 ) (2, 4)(2,4)最优。撤去了2 × 4 − 2 = 6 2\times 4 - 2 = 62×42=6张桌子,且每张桌子到距离它最远的桌子的距离均为1 2 + 3 2 = 10 \sqrt{1 ^ 2 + 3 ^ 2} = \sqrt {10}12+32=10,因此第二问答案为2 10 2\sqrt {10}210

如果选择( 1 , 1 ) (1, 1)(1,1)( 2 , 3 ) (2, 3)(2,3),则第二问答案为2 5 2\sqrt 525,不优。

「评分方式」

对于每组测试数据:

  • 若你第一问的答案错误,得 0 分。
  • 否则,若你第二问的答案错误,得 0.8 分。
  • 否则,得 1 分。

每个测试点的得分为测试点内所有测试数据的得分的最小值乘以该测试点的分值。

注意,若你输出的格式错误,得 0 分。因此,如果你只希望获得第一问的分数,请在第二问输出任意合理范围内的实数。

「数据范围与约定」

  • 测试点 #1(15 points):n , m n, mn,m均为奇数。
  • 测试点 #2(20 points):n = 1 n = 1n=1
  • 测试点 #3(25 points):n = 2 n = 2n=2
  • 测试点 #4(30 points):n nn为奇数。
  • 测试点 #5(10 points):无特殊限制。

对于100 % 100\%100%的数据:

  • 1 ≤ T ≤ 57 1\leq T\leq 571T57
  • 1 ≤ n , m ≤ 1064 1\leq n, m\leq 10641n,m1064

「帮助与提示」

  • 你可以使用cmath中的sqrt(x)函数计算x xx的平方根。它返回double类型的值。sqrtl(x)精度更高,它返回long double类型的值。

「题目来源」

  • Sweet Round 8 A
  • Idea & Solution:Alex_Wei。
  • Tester:chenxia25。

C++实现

#include<bits/stdc++.h>#definelllonglongusingnamespacestd;ll s,t,n,m,r;intmain(){std::ios::sync_with_stdio(false);cin.tie(0),cout.tie(0);cin>>s>>t;for(inti=1;i<=t;i++){boolp=1,q=1;cin>>n>>m;r=n*m;if(n%2==0)n--,p=0;if(m%2==0)m--,q=0;r-=(n/2+1)*(m/2+1);cout<<r<<" ";if(p==0)n++;if(q==0)m++;if(n*m-r==1){cout<<"0.000000000"<<endl;continue;}longdoubleans=0.0;longlongk=1,j=1;p=1,q=1;for(k=1;k<=n;k+=2){q=1;for(j=1;j<=m;j+=2){if(m%2==0&&j>(m/2)&&(q))j++,q=0;longlongx,y;if(k<=(n+1)/2)x=k;elsex=n-k+1;if(j<=(m+1)/2)y=j;elsey=m-j+1;ans+=sqrtl(((longdouble)((n-x)*(n-x))+((longdouble)((m-y)*(m-y)))));}if(n%2==0&&k+2>=(n/2)&&(p))k++,p=0;}cout<<fixed<<setprecision(9)<<ans<<endl;}return(0-0);}

后续

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

http://www.jsqmd.com/news/785873/

相关文章:

  • LSTM门控机制原理解析与工业级调优实战
  • CANN/cannbot-skills模型推理精度调试
  • 3个秘诀掌握全网视频资源捕获:猫抓浏览器扩展的完整指南
  • CANN适配Spirit-v1.5昇腾推理
  • 以为再也见不到那些文件了…” 客户差点哭出来,结果数据全回来了
  • ChatGPT资源大全:从开源仓库到AI应用开发实战指南
  • 通过模型广场为不同业务场景选择合适的大模型
  • CANN/pyasc绝对值函数API文档
  • 常见软件测试用例设计方法
  • GESP考级1—8注意事项
  • 第47篇:Vibe Coding时代:LangGraph + 代码回滚机制实战,解决 Agent 修改失败后无法恢复的问题
  • 终极Windows热键冲突检测指南:Hotkey Detective完全解析
  • AI气象预报新突破:FengWu-Adas实现从观测到预报的端到端闭环
  • 网络安全威胁情报分析实战:从IOC管理到TTP追踪的完整技能框架
  • 终结AI模型幻觉:MCP协议服务器实时验证模型ID,提升编码效率
  • 学术界的AI伦理博弈:从ChatGPT看生成式AI在教育中的信任与效率挑战
  • 关于目前C++学士现状分析
  • 聚合统计-原理和应用场景
  • 关系选择器和关系选择器的复合,简单实用快来看一看吖~
  • 2026 AI大模型接口中转站排行榜:哪家平台能为开发者和企业提供最优质服务?
  • Cloudflare Agents Week 2026 总结:20 项发布,一张 Cloud 2.0 的完整地图
  • 专为打工人打造!OpenClaw 中文汉化版部署教程
  • 仙居神仙居旅游核心优势:山水间的诗意栖居与生态人文之旅 - 品牌策略师
  • Apache Airflow 系列教程 | 第24课:监控、指标与可观测性
  • 有哪些专业且非常好用的毕业论文写作辅助生成工具(提纲、初稿、降重、图表公式生成)?
  • 服务器端表单验证
  • 电池清洁度萃取设备与分析仪如何完美协同?西恩士紊流灌流+智能识别标杆方案解析 - 工业设备研究社
  • Windows热键冲突终结者:Hotkey Detective帮你一键揪出占用程序
  • 长沙短视频拍摄哪家更可靠
  • P1228 地毯填补问题【洛谷算法习题】