应急设施的优化选址-帮同学建模解题

本文通过遍历计算的方法,求解了一个5x10网格中各点的响应时间,并找出了响应时间最短的位置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今日马同学给了我一个任务,数学建模啥的……

#include <iostream>
#include <algorithm>
#include <cstdio>
#include <math.h>
using namespace std;
/////////////////////////////////
static const double ptime[5][10]={
    {2,4,2,3,0,5,1,2,2,5},
    {4,0,3,1,4,3,3,3,3,2},
    {0,0,0,0,4,3,0,3,3,4},
    {1,0,2,2,3,4,0,0,2,1},
    {3,3,0,1,2,3,5,2,2,3}};
    double sum=108.0;
/////////////////////////////////
double tval(int x,int y)
{
    double ans=0;
    for(int i=0;i<=4;i++)
    for(int j=0;j<=9;j++)
    {ans += ptime[i][j] / sum * (15.0*fabs(x-(i+0.5)+20.0*fabs(y-(j+0.5))));}
    return ans;
}
////////////////////////////
int main()
{
    cout<<"init ...OK"<<endl;
    double sum=0,min=999999;
    for(int tmp1=0;tmp1<=4;tmp1++)
    for(int tmp2=0;tmp2<=9;tmp2++)
    {sum+=ptime[tmp1][tmp2];cout<<ptime[tmp1][tmp2]<<"\t";}
    cout<<"------------------------------\n"<<"总数目为:"<<sum<<endl;
    cout<<"------------------------------"<<endl;
    cout<<"现在开始计算每个坐标的响应时间"<<endl; 
    cout<<"------------------------------"<<endl;
    for(int tmp1=0;tmp1<=5;tmp1++)
    for(int tmp2=0;tmp2<=10;tmp2++)
    {double tt=tval(tmp1,tmp2);
     cout<<"坐标   ("<<tmp1<<","<<tmp2<<")\t的响应时间为"<<tt<<endl;
     if(tt<min)min=tt;}
     cout<<"其中最小的为:"<<min<<endl; 
    
 getchar();
 return 0;   
}

写了些也就普通的遍历求和罢了。


result:

init ...OK
2       4       2       3       0       5       1       2       2       5
4       0       3       1       4       3       3       3       3       2
0       0       0       0       4       3       0       3       3       4
1       0       2       2       3       4       0       0       2       1
3       3       0       1       2       3       5       2       2       3
------------------------------
总数目为:108
------------------------------
现在开始计算每个坐标的响应时间
------------------------------
坐标   (0,0)    的响应时间为1611.81
坐标   (0,1)    的响应时间为1339.58
坐标   (0,2)    的响应时间为1114.58
坐标   (0,3)    的响应时间为928.472
坐标   (0,4)    的响应时间为781.25
坐标   (0,5)    的响应时间为689.583
坐标   (0,6)    的响应时间为684.028
坐标   (0,7)    的响应时间为753.472
坐标   (0,8)    的响应时间为875.694
坐标   (0,9)    的响应时间为1059.03
坐标   (0,10)   的响应时间为1317.36
坐标   (1,0)    的响应时间为1626.81
坐标   (1,1)    的响应时间为1354.58
坐标   (1,2)    的响应时间为1129.58
坐标   (1,3)    的响应时间为943.472
坐标   (1,4)    的响应时间为796.25
坐标   (1,5)    的响应时间为704.583
坐标   (1,6)    的响应时间为699.028
坐标   (1,7)    的响应时间为768.472
坐标   (1,8)    的响应时间为890.694
坐标   (1,9)    的响应时间为1074.03
坐标   (1,10)   的响应时间为1332.36
坐标   (2,0)    的响应时间为1641.81
坐标   (2,1)    的响应时间为1369.58
坐标   (2,2)    的响应时间为1144.58
坐标   (2,3)    的响应时间为958.472
坐标   (2,4)    的响应时间为811.25
坐标   (2,5)    的响应时间为719.583
坐标   (2,6)    的响应时间为714.028
坐标   (2,7)    的响应时间为783.472
坐标   (2,8)    的响应时间为905.694
坐标   (2,9)    的响应时间为1089.03
坐标   (2,10)   的响应时间为1347.36
坐标   (3,0)    的响应时间为1656.81
坐标   (3,1)    的响应时间为1384.58
坐标   (3,2)    的响应时间为1159.58
坐标   (3,3)    的响应时间为973.472
坐标   (3,4)    的响应时间为826.25
坐标   (3,5)    的响应时间为734.583
坐标   (3,6)    的响应时间为729.028
坐标   (3,7)    的响应时间为798.472
坐标   (3,8)    的响应时间为920.694
坐标   (3,9)    的响应时间为1104.03
坐标   (3,10)   的响应时间为1362.36
坐标   (4,0)    的响应时间为1671.81
坐标   (4,1)    的响应时间为1399.58
坐标   (4,2)    的响应时间为1174.58
坐标   (4,3)    的响应时间为988.472
坐标   (4,4)    的响应时间为841.25
坐标   (4,5)    的响应时间为749.583
坐标   (4,6)    的响应时间为744.028
坐标   (4,7)    的响应时间为813.472
坐标   (4,8)    的响应时间为935.694
坐标   (4,9)    的响应时间为1119.03
坐标   (4,10)   的响应时间为1377.36
坐标   (5,0)    的响应时间为1686.81
坐标   (5,1)    的响应时间为1414.58
坐标   (5,2)    的响应时间为1189.58
坐标   (5,3)    的响应时间为1003.47
坐标   (5,4)    的响应时间为856.25
坐标   (5,5)    的响应时间为764.583
坐标   (5,6)    的响应时间为759.028
坐标   (5,7)    的响应时间为828.472
坐标   (5,8)    的响应时间为950.694
坐标   (5,9)    的响应时间为1134.03
坐标   (5,10)   的响应时间为1392.36
其中最小的为:684.028

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

糖果天王

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值