




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
數(shù)學(xué)建模校車安排問(wèn)題最近因?yàn)閿?shù)學(xué)建模,要做模擬題,順便練習(xí)一下代碼水平下面是模擬題許多學(xué)校都建有新校區(qū),常常需要將老校區(qū)的教師和工作人員用校車送到新校區(qū)。由于每天到新校區(qū)的教師和工作人員很多,往往需要安排許多車輛。如何有效的安排車輛及讓教師和工作人員盡量滿意是個(gè)十分重要的問(wèn)題?,F(xiàn)有如下問(wèn)題請(qǐng)你設(shè)計(jì)解決。假設(shè)老校區(qū)的教師和工作人員分布在50個(gè)區(qū),各區(qū)的距離見(jiàn)表1。各區(qū)人員分布見(jiàn)表2。問(wèn)題1如要建立個(gè)乘車點(diǎn),為使各區(qū)人員到最近乘車點(diǎn)的距離最小,該將校車乘車點(diǎn)應(yīng)建立在哪個(gè)點(diǎn)。建立一般模型,并給出時(shí)的結(jié)果。很明顯,這是一個(gè)求最短路徑的問(wèn)題,先要求每個(gè)點(diǎn)到其他點(diǎn)的最短路徑,設(shè)sum[n,m]為從n到m的最短路徑,因?yàn)橐O(shè)置乘車點(diǎn),先假設(shè)設(shè)立一個(gè)乘車點(diǎn)n,就要把所有的sum[i,n](i屬于1到50),加上算出總的乘車距離,循環(huán)50次,找到總乘車距離最短的乘車點(diǎn),就是所求,以此類推,當(dāng)設(shè)立2個(gè)乘車點(diǎn),就是排列組合,循環(huán)50*50次,每個(gè)點(diǎn)要用判斷條件確定去哪個(gè)乘車點(diǎn)的距離更短,來(lái)確定這個(gè)點(diǎn)到乘車點(diǎn)的距離,算完后再加起來(lái),總距離最短的兩個(gè)點(diǎn)就是所求。數(shù)學(xué)建模有一點(diǎn)不同的是,數(shù)據(jù)是txt文本的,要用一個(gè)二維數(shù)組儲(chǔ)存起來(lái),再進(jìn)行運(yùn)算,結(jié)果,再輸入一個(gè)txt文本中,當(dāng)然這個(gè)難不倒我,用C語(yǔ)言的IO接口就能解決問(wèn)題,下面是代碼。利用dijitesla算法計(jì)算最短路徑的代碼#include<windows.h>#include<stdio.h>#include<stdbool.h>constintmaxnum=51;///最大的節(jié)點(diǎn)數(shù)constsize_tmaxint=-1;///如果兩點(diǎn)沒(méi)有路徑,則設(shè)置為此較大的值intdist[maxnum];///存儲(chǔ)原點(diǎn)到各點(diǎn)的最短距離intc[maxnum][maxnum];///存儲(chǔ)圖的鄰接矩陣intn,line;///節(jié)點(diǎn)數(shù),和路徑數(shù)voiddijikstr(intn,intv,size_tdist2[maxnum],intc[maxnum][maxnum]){bools[maxnum];///標(biāo)記這個(gè)點(diǎn)是否已求出最短的路徑。size_tdist[51];for(inti=1;i<=n;i++){///初始化dist[]和s[]dist[i]=c[v][i];s[i]=0;}///原點(diǎn)s[v]=1;dist[v]=0;///原點(diǎn)不用再進(jìn)行計(jì)算,所以從2開始for(inti=0;i<n;i++)//節(jié)點(diǎn)的個(gè)數(shù){size_ttemp=-1;intu=v;//u為初始點(diǎn),每次循環(huán)完都要初始化。for(intj=1;j<=n;j++)if((!s[j])&&dist[j]<temp)//沒(méi)有到最小距離{///找出距離最短的直接路徑u=j;temp=dist[j];}s[u]=1;//將直接的最短路徑設(shè)為找到。///更新剩余的點(diǎn)與原點(diǎn)的距離(dist)for(intj=1;j<=n;j++)if(!s[j]&&c[u][j]!=maxint){intnewdist=dist[u]+c[u][j];//以第u個(gè)點(diǎn)為跳板,找到源點(diǎn)到第j個(gè)點(diǎn)的最短距離。if(dist[j]>newdist){dist[j]=newdist;}}}//for(inti=1;i<=50;i++)//printf("第%u個(gè)點(diǎn)到第%u個(gè)點(diǎn)的距離為%u\n",v,i,dist[i]);FILE*fp;if((fp=fopen("final_table.txt","a"))==NULL){printf("Fileopenfailed!\n");}for(inti=1;i<=50;i++){fprintf(fp,"%u",dist[i]);if(i==50)fprintf(fp,"|\n");}}intmain({inti=0;intj=0;size_ttable[50][50]={-1};//用來(lái)儲(chǔ)存表的信息的for(i=0;i<50;i++)for(j=0;j<50;j++){table[i][j]=-1;}FILE*fp;if((fp=fopen("table.txt","r"))==NULL){printf("Fileopenfailed!\n");return1;}intjudge=0;//用來(lái)判斷當(dāng)前的數(shù)屬于行列,或者是距離inti_2;//行intj_2;//列for(i=0;i<50;i++)//讀取for(j=0;j<50;j++){judge++;if(judge==4)judge=0;if(judge==1)fscanf(fp,"%u",&i_2);if(judge==2)fscanf(fp,"%u",&j_2);if(judge==3){fscanf(fp,"%u",&table[i_2-1][j_2-1]);//因?yàn)轭}中沒(méi)有第0個(gè)區(qū)域,但數(shù)組編號(hào)是從0開始的,所以要-1.table[j_2-1][i_2-1]=table[i_2-1][j_2-1];}}for(i=0;i<50;i++)for(j=0;j<50;j++){if(i==j)table[i][j]=0;//一個(gè)區(qū)域到它本身的距離為0.}FILE*fp2=fopen("table_new.txt","w");for(i=0;i<50;i++)for(j=0;j<50;j++){fprintf(fp2,"%u",table[i][j]);if(j==49)fprintf(fp2,"|",);}inttable_2[51][51];for(j=0;j<50;j++){table_2[j][0]=0;}for(i=0;i<50;i++)for(j=0;j<50;j++){table_2[i+1][j+1]=table[i][j];}for(intm=1;m<=50;m++){size_tdist[50]={0};dijikstr(50,m,dist,table_2);}}。說(shuō)明一下,table.txt裝著附錄表的信息,new_table是是能夠循環(huán)傳入二維數(shù)組的數(shù)據(jù),final_table為求出的每個(gè)點(diǎn)到其他點(diǎn)的最短路徑#include"pch.h"#define_CRT_SECURE_NO_WARNINGS#include<Windows.h>#include<stdio.h>size_tsum=-1;size_tnew_sum;intflag1;intflag2;intmain({inttable_3[50][50]={0};FILE*fp;if((fp=fopen("final_table.txt","r"))==NULL){printf("Fileopenfailed!\n");return1;}for(inti=0;i<50;i++)for(intj=0;j<50;j++){fscanf(fp,"%u",&table_3[i][j]);}for(inti=0;i<50;i++)//當(dāng)n=2時(shí),i和j分別為第1,第2個(gè)選定的區(qū)域for(intj=0;j<50;j++){if(i!=j){new_sum=0;for(intk=0;k<50;k++)//其他50個(gè)地區(qū)的去向{if(table_3[k][i]>table_3[k][j])new_sum+=table_3[k][j];if(table_3[k][i]<=table_3[k][j])new_sum+=table_3[k][i];}if(sum>new_sum)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 供應(yīng)商信息訪問(wèn)協(xié)議
- 2025年商標(biāo)權(quán)質(zhì)押損害賠償協(xié)議
- 租賃婚紗合同范本
- 大型貨車租賃合同示例
- 高空作業(yè)免責(zé)協(xié)議書范本
- 給力面試培訓(xùn)協(xié)議書范本
- 公司租用員工汽車協(xié)議書范本
- 社交平臺(tái)在客戶支持與反饋中的功能拓展
- 工廠副總經(jīng)理年終工作總結(jié)
- 交通安全法治講座
- 2025年內(nèi)蒙古呼倫貝爾農(nóng)墾拉布大林上庫(kù)力三河蘇沁農(nóng)牧場(chǎng)招聘115人歷年高頻重點(diǎn)模擬試卷提升(共500題附帶答案詳解)
- (2025)特種設(shè)備安全管理員考試題庫(kù)及參考答案
- 中學(xué)創(chuàng)客教育教學(xué)活動(dòng)計(jì)劃
- 2025年廣東省廣州市食品檢驗(yàn)所事業(yè)單位招聘若干人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 《移動(dòng)通信市場(chǎng)推廣策略》課件
- 2024年湖南工業(yè)職業(yè)技術(shù)學(xué)院高職單招職業(yè)技能測(cè)驗(yàn)歷年參考題庫(kù)(頻考版)含答案解析
- 2024年湖南司法警官職業(yè)學(xué)院高職單招職業(yè)技能測(cè)驗(yàn)歷年參考題庫(kù)(頻考版)含答案解析
- 2025年國(guó)家藥品監(jiān)督管理局藥品審評(píng)中心招聘11人歷年高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2024年廣東省《輔警招聘考試必刷500題》考試題庫(kù)含必背答案
- 餐飲企業(yè)牛奶產(chǎn)品推廣方案
- 2025年中國(guó)南光集團(tuán)有限公司招聘筆試參考題庫(kù)含答案解析
評(píng)論
0/150
提交評(píng)論