【問題描述】 在一個N*N的點陣中,如N=4,你現在站在(1,1),出口在(4,4)。你可以通過上、下、左、右四種移動方法,在迷宮內行走,但是同一個位置不可以訪問兩次,亦不可以越界。表格最上面的一行加黑數字A[1..4]分別表示迷宮第I列中需要訪問并僅可以訪問的格子數。右邊一行加下劃線數字B[1..4]則表示迷宮第I行需要訪問并僅可以訪問的格子數。如圖中帶括號紅色數字就是一條符合條件的路線。 給定N,A[1..N] B[1..N]。輸出一條符合條件的路線,若無解,輸出NO ANSWER。(使用U,D,L,R分別表示上、下、左、右。) 2 2 1 2 (4,4) 1 (2,3) (3,3) (4,3) 3 (1,2) (2,2) 2 (1,1) 1 【輸入格式】 第一行是數m (n < 6 )。第二行有n個數,表示a[1]..a[n]。第三行有n個數,表示b[1]..b[n]。 【輸出格式】 僅有一行。若有解則輸出一條可行路線,否則輸出“NO ANSWER”。
標簽: 點陣
上傳時間: 2014-06-21
上傳用戶:llandlu
實驗源代碼 //Warshall.cpp #include<stdio.h> void warshall(int k,int n) { int i , j, t; int temp[20][20]; for(int a=0;a<k;a++) { printf("請輸入矩陣第%d 行元素:",a); for(int b=0;b<n;b++) { scanf ("%d",&temp[a][b]); } } for(i=0;i<k;i++){ for( j=0;j<k;j++){ if(temp[ j][i]==1) { for(t=0;t<n;t++) { temp[ j][t]=temp[i][t]||temp[ j][t]; } } } } printf("可傳遞閉包關系矩陣是:\n"); for(i=0;i<k;i++) { for( j=0;j<n;j++) { printf("%d", temp[i][ j]); } printf("\n"); } } void main() { printf("利用 Warshall 算法求二元關系的可傳遞閉包\n"); void warshall(int,int); int k , n; printf("請輸入矩陣的行數 i: "); scanf("%d",&k); 四川大學實驗報告 printf("請輸入矩陣的列數 j: "); scanf("%d",&n); warshall(k,n); }
上傳時間: 2016-06-27
上傳用戶:梁雪文以
#include "iostream" using namespace std; class Matrix { private: double** A; //矩陣A double *b; //向量b public: int size; Matrix(int ); ~Matrix(); friend double* Dooli(Matrix& ); void Input(); void Disp(); }; Matrix::Matrix(int x) { size=x; //為向量b分配空間并初始化為0 b=new double [x]; for(int j=0;j<x;j++) b[j]=0; //為向量A分配空間并初始化為0 A=new double* [x]; for(int i=0;i<x;i++) A[i]=new double [x]; for(int m=0;m<x;m++) for(int n=0;n<x;n++) A[m][n]=0; } Matrix::~Matrix() { cout<<"正在析構中~~~~"<<endl; delete b; for(int i=0;i<size;i++) delete A[i]; delete A; } void Matrix::Disp() { for(int i=0;i<size;i++) { for(int j=0;j<size;j++) cout<<A[i][j]<<" "; cout<<endl; } } void Matrix::Input() { cout<<"請輸入A:"<<endl; for(int i=0;i<size;i++) for(int j=0;j<size;j++){ cout<<"第"<<i+1<<"行"<<"第"<<j+1<<"列:"<<endl; cin>>A[i][j]; } cout<<"請輸入b:"<<endl; for(int j=0;j<size;j++){ cout<<"第"<<j+1<<"個:"<<endl; cin>>b[j]; } } double* Dooli(Matrix& A) { double *Xn=new double [A.size]; Matrix L(A.size),U(A.size); //分別求得U,L的第一行與第一列 for(int i=0;i<A.size;i++) U.A[0][i]=A.A[0][i]; for(int j=1;j<A.size;j++) L.A[j][0]=A.A[j][0]/U.A[0][0]; //分別求得U,L的第r行,第r列 double temp1=0,temp2=0; for(int r=1;r<A.size;r++){ //U for(int i=r;i<A.size;i++){ for(int k=0;k<r-1;k++) temp1=temp1+L.A[r][k]*U.A[k][i]; U.A[r][i]=A.A[r][i]-temp1; } //L for(int i=r+1;i<A.size;i++){ for(int k=0;k<r-1;k++) temp2=temp2+L.A[i][k]*U.A[k][r]; L.A[i][r]=(A.A[i][r]-temp2)/U.A[r][r]; } } cout<<"計算U得:"<<endl; U.Disp(); cout<<"計算L的:"<<endl; L.Disp(); double *Y=new double [A.size]; Y[0]=A.b[0]; for(int i=1;i<A.size;i++ ){ double temp3=0; for(int k=0;k<i-1;k++) temp3=temp3+L.A[i][k]*Y[k]; Y[i]=A.b[i]-temp3; } Xn[A.size-1]=Y[A.size-1]/U.A[A.size-1][A.size-1]; for(int i=A.size-1;i>=0;i--){ double temp4=0; for(int k=i+1;k<A.size;k++) temp4=temp4+U.A[i][k]*Xn[k]; Xn[i]=(Y[i]-temp4)/U.A[i][i]; } return Xn; } int main() { Matrix B(4); B.Input(); double *X; X=Dooli(B); cout<<"~~~~解得:"<<endl; for(int i=0;i<B.size;i++) cout<<"X["<<i<<"]:"<<X[i]<<" "; cout<<endl<<"呵呵呵呵呵"; return 0; }
標簽: 道理特分解法
上傳時間: 2018-05-20
上傳用戶:Aa123456789
原版英文PDF電子書免費下載:Digital Integrated Circuit Design From VLSI Architectures to CMOS Fabrication,891頁 本書從架構和算法講起,介紹了功能驗證、vhdl建模、同步電路設計、異步數據獲取、能耗與散熱、信號完整性、物理設計、設計驗證等必備技術,還講解了vlsi經濟運作與項目管理,并簡單闡釋了cmos技術的基礎知識,全面涵蓋了數字集成電路的整個設計開發過程。 本書既可以作為高等院校微電子、電子技術等相關專業高年級師生和研究生的參考教材,也可供半導體行業工程師參考。 現代電子系統日益復雜,隨著半導體工藝水平的提高,單芯片的集成度和功能得以不斷增強,其設計復雜度和各種風險也隨之變大,甚至影響到投資者對研發新的更復雜系統芯片的信心。但是,為了有效降低便攜式移動系統的產品單位成本和能量消耗,同時為了在產品獨特性方面有競爭力,越來越多的電子產品仍然必須采用專用芯片解決方案。因此,深入了解數字集成電路設計的基本方法和關鍵問題,并明確開發過程的各個實踐環節存在的風險,就變得十分必要。 本書是一本將超大規模數字電路基本概念原理與工程實踐管理相結合的綜合性教材。作者根據自己多年的教學和工程實踐經驗,從工程實踐的關鍵問題出發,對超大規模數字電路的全部講授內容進行了一次全新的梳理,形成了清晰的解決思路。在數字集成電路設計的各個環節,作者重點闡述了設計研制中必須考慮的關鍵因素,在豐富經驗基礎上對設計中常常出現的問題進行了詳盡的討論,可以幫助研究生和資深工程師完善自身的設計經驗和能力,也可以幫助項目管理者明確各個環節的工作重點,規避研發環節的風險。 本書和其他數字集成電路教科書相比,有兩個突出的特點。第一是自頂向下的組織方式,從算法的架構設計開始,討論了同步設計的各種時鐘技術、設計驗證、散熱和封裝問題,還討論了VLSI(超大規模集成電路)經濟學與項目管理。讀者可以根據自身需要直接閱讀感興趣的章節,而不需要很多半導體物理與器件方面的知識。第二是實用性。本書用了相當多的篇幅討論了工程實踐的問題,例如給出了一個很好的設計數據組織方法,還有很多檢查列表與提醒。 在目前的集成電路項目里,大量使用了重用的虛擬元件,通常有十幾個到幾十個時鐘,驗證工作量也要占到整個項目周期和投資的50%~70%,關于虛擬元件、時鐘方案、VLSI經濟學、項目管理、功能驗證、設計驗證等內容的討論都可以直接作為實際項目實踐的參考??傊緯膬热菹喈斎娌⒂幸欢ㄉ疃?,基本涵蓋了數字集成電路設計的各個方面,非常適合用作學習數字集成電路設計的高年級本科生與研究生的教科書,也適合作為正在從事數字集成電路開發的工程人員的參考書。
標簽:
上傳時間: 2022-06-30
上傳用戶:kristycreasy
主要作為建造師資格培訓的配套教材,也可供建筑工程施工單位、工程監理單位、勘察設計單位廣大技術人員參考使用。 《機電工程管理與實務》共分三篇,機電工程技術、機電工程施工管理實務、機電工程法規及相關規定。第一篇分十三章,包括:機電工程材料的分類及用途、電氣工程技術、自動控制與儀表工程技術、給排水工程技術、機械設備安裝技術、容器的安裝技術、起重技術、焊接技術、供熱通風與空調工程技術、建筑智能化工程安裝技術、消防工程安裝技術、設備及管道防腐蝕與絕熱技術、測量工程技術;第二篇分九章,包括:機電工程項目的組成、機電工程項目投標與合同管理、機電工程項目施工組織設計與資源管理、機電工程項目的進度控制、機電工程項目的質量控制、機電工程項目的預結算與成本控制、機電工程項目的安全管理、機電工程項目的試運行、機電工程項目的驗收;第三篇分八章,包括:中華人民共和國計量法、中華人民共和國電力法、特種設備安全監察條例、機械設備安裝工程施工及驗收通用規范、現場設備、工業管道焊接工程施工及驗收規范、鋼結構工程施工質量驗收規范、電氣裝置安裝工程高壓電器施工及驗收規范、工業爐砌筑工程施工及驗收規范。內容深入淺出,通俗易懂,便于自學。
標簽: 機電實務
上傳時間: 2022-08-10
上傳用戶:
《三江學院師資管理系統》 核心模塊功能簡介 《三江學院師資管理系統》是基于B/S架構的Web應用程序,校園網上任何合法用戶可以直接訪問。一期工程實現了該系統的核心功能模塊,包括安全認證、教師信息維護、學科信息維護、部分報表打印等功能,該系統已投入試運行。目前該系統安裝在計算機系應用軟件開發組服務器上,內網IP地址為192.168.xxx.xxx。需要訪問師資系統的用戶請在瀏覽器地址欄輸入
上傳時間: 2014-01-09
上傳用戶:獨孤求源
在線醫藥銷售管理系統(b/s)
上傳時間: 2013-12-19
上傳用戶:moerwang
b/s模式的集新聞發布、管理與一體的新聞發布系統,可以發布多個圖片的新聞,并且可以很好的排版頁面顯示的格式;每一篇新聞都可以有自己的關鍵字來描述,說明該新聞的主要內容,并且可以關聯該新聞內容相似的新聞,新聞還可以無限分類 前臺是不需要認證的,是供網站的訪問者訪問的,主要完成了以下功能: 1. 新聞瀏覽 2. 新聞查詢 3. 相關新聞自動鏈接 4. 新聞評論 5. 新聞主頁 6. 新聞訪問次數統計 7. 新聞分類列表 后臺主要是方便管理員和新聞發布員管理和發布新聞的,主要有以下功能: 1. 新聞主要版面的定義,修改,刪除 2. 新聞次要版面的定義,修改,刪除 3. 新聞的發布,修改,刪除,審核狀態的更改 4. 新聞系統的用戶的管理 5. 新聞系統用戶的密碼修改 6. 新聞日志記錄 7. 新聞數據統計 8. 系統郵件功能 9. 系統使用說明 系統管理:admin/login.jsp 用戶名:administrator 用戶密碼:123456
上傳時間: 2014-01-01
上傳用戶:wangchong
企業內部辦公管理信息系統 (一個用ASP開發的基于B/S方式的畢業設計)
上傳時間: 2013-12-13
上傳用戶:ynwbosss
圖書管理程序,b-tree,c++語言完成。程序非常的棒
上傳時間: 2013-12-19
上傳用戶:love1314