【問題描述】 在一個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
一. eMMC的概述eMMC (Embedded MultiMedia Card) 為MMC協會所訂立的內嵌式存儲器標準規格,主要是針對手機產品為主。eMMC的一個明顯優勢是在封裝中集成了一個控制器, 它提供標準接口并管理閃存, 使得手機廠商就能專注于產品開發的其它部分,并縮短向市場推出產品的時間。這些特點對于希望通過縮小光刻尺寸和降低成本的NAND供應商來說,具有同樣的重要性。二. eMMC的優點eMMC目前是最當紅的移動設備本地存儲解決方案,目的在于簡化手機存儲器的設計,由于NAND Flash 芯片的不同廠牌包括三星、KingMax、東芝(Toshiba) 或海力士(Hynix) 、美光(Micron) 等,入時,都需要根據每家公司的產品和技術特性來重新設計,過去并沒有哪個技術能夠通用所有廠牌的NAND Flash 芯片。而每次NAND Flash 制程技術改朝換代,包括70 納米演進至50 納米,再演進至40 納米或30 納米制程技術,手機客戶也都要重新設計, 但半導體產品每1 年制程技術都會推陳出新, 存儲器問題也拖累手機新機種推出的速度,因此像eMMC這種把所有存儲器和管理NAND Flash 的控制芯片都包在1 顆MCP上的概念,逐漸風行起來。eMMC的設計概念,就是為了簡化手機內存儲器的使用,將NAND Flash 芯片和控制芯片設計成1 顆MCP芯片,手機客戶只需要采購eMMC芯片,放進新手機中,不需處理其它繁復的NAND Flash 兼容性和管理問題,最大優點是縮短新產品的上市周期和研發成本,加速產品的推陳出新速度。閃存Flash 的制程和技術變化很快,特別是TLC 技術和制程下降到20nm階段后,對Flash 的管理是個巨大挑戰,使用eMMC產品,主芯片廠商和客戶就無需關注Flash 內部的制成和產品變化,只要通過eMMC的標準接口來管理閃存就可以了。這樣可以大大的降低產品開發的難度和加快產品上市時間。eMMC可以很好的解決對MLC 和TLC 的管理, ECC 除錯機制(Error Correcting Code) 、區塊管理(BlockManagement)、平均抹寫儲存區塊技術 (Wear Leveling) 、區塊管理( Command Managemen)t,低功耗管理等。eMMC核心優點在于生產廠商可節省許多管理NAND Flash 芯片的時間,不必關心NAND Flash 芯片的制程技術演變和產品更新換代,也不必考慮到底是采用哪家的NAND Flash 閃存芯片,如此, eMMC可以加速產品上市的時間,保證產品的穩定性和一致性。
標簽: emmc
上傳時間: 2022-06-20
上傳用戶:jiabin
21世紀大學新型參考教材系列 集成電路B 荒井
上傳時間: 2013-04-15
上傳用戶:eeworm
家電維修(最基礎的教程B)1-20.Torrent
上傳時間: 2013-06-10
上傳用戶:eeworm
jk-b交通信號控制機原理圖
上傳時間: 2013-07-13
上傳用戶:eeworm
專輯類-實用電子技術專輯-385冊-3.609G jk-b交通信號控制機原理圖-1.3M.zip
上傳時間: 2013-08-02
上傳用戶:zhf1234
專輯類-電子基礎類專輯-153冊-2.20G 21世紀大學新型參考教材系列-集成電路B-荒井-159頁-2.8M.pdf
上傳時間: 2013-05-16
上傳用戶:pkkkkp
三次B樣條曲線源代碼,C語言編寫的三次B樣條曲線源代碼,希望大家喜歡。
標簽:
上傳時間: 2013-07-13
上傳用戶:chengli008