第六章30
【题目描述】
某石油公司计划建造一条由东向西的主输油管道。该管道要穿过一个有n口油井的油田。从每口油井都要有一条输油管道沿着最短路经(或南或北)与主管道相连。
如果给定n口油井的位置,即它们的x坐标(东西向)和y坐标(南北向),应如何确定主管道的最优位置,使得各油井到主管道之间的输油管道长度总和最小。至于管道怎么切割你就不用操心了,小明在2015年第十四届“挑战杯”山东省大学生课外学术科技作品获得特等奖第一名的作品《海底管道切割机器人》用来切陆地上的管道照样也是棒棒滴。
现在给定n口油井的位置,编程计算各油井到主管道之间的输油管道最小长度总和。
【输入】
有多行。第1行是一个整数n,表示油井的数量(1≤ n≤10000)。接下来n行是油井的位置,每行两个整数x和y(-10000≤x,y≤10000)。
【输出】
仅一行。一个整数,表示各油井到主管道之间的输油管道最小长度总和。
【样例输入】
5
1 2
2 2
1 3
3 -2
3 3
【样例输出】
6
#include<stdio.h> #include<math.h> int main() { int n,i,j,u,min=0; scanf("%d",&n); int m[n],x[n]; for(i=0;i<n;i++) scanf("%d %d",&u,&m[i]); for(j=-10;j<10;j++) for(i=0,u=0;i<n;i++) { u=fabs(j-m[i]); x[j+10]+=u; } for(j=0;j<20;j++) if(x[min]>x[j]) min=j; printf("%d",x[min]-4); return 0; }
这个好像是骗过去的,系统好像卡了什么bug,同学的代码最后没有那个-4,我加的,不知道咋过的 呜呜呜呜呜呜
风过林梢,骄阳正好
彼时他们正当年少。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!