【問題描述】 在一個N*N的點陣中,如N=4,你現(xiàn)在站在(1,1),出口在(4,4)。你可以通過上、下、左、右四種移動方法,在迷宮內(nèi)行走,但是同一個位置不可以訪問兩次,亦不可以越界。表格最上面的一行加黑數(shù)字A[1..4]分別表示迷宮第I列中需要訪問并僅可以訪問的格子數(shù)。右邊一行加下劃線數(shù)字B[1..4]則表示迷宮第I行需要訪問并僅可以訪問的格子數(shù)。如圖中帶括號紅色數(shù)字就是一條符合條件的路線。 給定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 【輸入格式】 第一行是數(shù)m (n < 6 )。第二行有n個數(shù),表示a[1]..a[n]。第三行有n個數(shù),表示b[1]..b[n]。 【輸出格式】 僅有一行。若有解則輸出一條可行路線,否則輸出“NO ANSWER”。
標(biāo)簽: 點陣
上傳時間: 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("可傳遞閉包關(guān)系矩陣是:\n"); for(i=0;i<k;i++) { for( j=0;j<n;j++) { printf("%d", temp[i][ j]); } printf("\n"); } } void main() { printf("利用 Warshall 算法求二元關(guān)系的可傳遞閉包\n"); void warshall(int,int); int k , n; printf("請輸入矩陣的行數(shù) i: "); scanf("%d",&k); 四川大學(xué)實驗報告 printf("請輸入矩陣的列數(shù) 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<<"正在析構(gòu)中~~~~"<<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; }
標(biāo)簽: 道理特分解法
上傳時間: 2018-05-20
上傳用戶:Aa123456789
本書第一部分講述的是傳統(tǒng)的網(wǎng)絡(luò)接口N e t B I O S、重定向器以及通過重定向器進(jìn)行的各類 網(wǎng)絡(luò)通信。盡管本書大部分內(nèi)容均圍繞Wi n s o c k編程這一主題展開,但是, A P I比起Wi n s o c k 來,仍然具有某些獨到之處
標(biāo)簽: 分 定向 網(wǎng)絡(luò)接口 編程
上傳時間: 2015-07-08
上傳用戶:戀天使569
介紹一個基于U S B 2 . 0 接口和D S P 的高速數(shù)據(jù)采集處理系統(tǒng)的工作原理設(shè)計及實現(xiàn)該高速數(shù)據(jù) 采集處理系統(tǒng)采用TI 公司的TMS320C6000 數(shù)字信號處理器和Cypress 公司的USB2.0 接口芯片可 以實現(xiàn)高速采集和實時處理有著廣泛的應(yīng)用前景
標(biāo)簽: Cypress C6000 320C 6000
上傳時間: 2013-11-27
上傳用戶:koulian
使用DVCC實驗系統(tǒng)中的并行接口芯片8255A的B口作輸入口,使工作于方式1,將PB0~PB7連接到手動開關(guān)K1~K8,將手動脈沖信號SP作為8255B口的選通信號,連接到PC2。將B品工作于方式1時的中斷請求信號(PC0)連接到8255A的IR3,8255A的片選信號無需連接(系統(tǒng)已連接好)。8259A的CS連接地址譯碼輸出端Y6,8259A的端口地址為60H、61H
標(biāo)簽: 8255A DVCC 實驗系統(tǒng) 并行接口
上傳時間: 2013-12-28
上傳用戶:xinyuzhiqiwuwu
5V USB扁口接口TP4055鋰離子電池充電接口板ALTIUM設(shè)計硬件原理圖+PCB文件,2層B板手設(shè)計,大小為33*18mm,,可以做為你的學(xué)習(xí)設(shè)計參考。TP4055 是一款完整的單節(jié)鋰離子電池充電器,帶電池正負(fù)極反接保護(hù),采用恒定 電流/恒定電壓線性控制。其 SOT 封裝與較少的外部元件數(shù)目使得 TP4055 成為便攜式應(yīng) 用的理想選擇。TP4055 可以適合 USB 電源和適配器電源工作。 由于采用了內(nèi)部 PMOSFET 架構(gòu),加上防倒充電路,所以不需要外部檢測電阻器和 隔離二極管。熱反饋可對充電電流進(jìn)行自動調(diào)節(jié),以便在大功率操作或高環(huán)境溫度條件 下對芯片溫度加以限制。充滿電壓固定于 4.2V,而充電電流可通過一個電阻器進(jìn)行外部 設(shè)置。當(dāng)電池達(dá)到 4.2V 之后,充電電流降至設(shè)定值 1/10,TP4055 將自動終止充電。 當(dāng)輸入電壓(交流適配器或 USB 電源)被拿掉時,TP4055 自動進(jìn)入一個低電流狀 態(tài),電池漏電流在 2uA 以下。TP4055 的其他特點包括充電電流監(jiān)控器、欠壓閉鎖、自 動再充電和一個用于指示充電結(jié)束和輸入電壓接入的狀態(tài)引腳。
上傳時間: 2021-11-22
上傳用戶:trh505
產(chǎn)品型號:VK2C23A/B 產(chǎn)品品牌:VINKA/永嘉微/永嘉微電 封裝形式:LQFP64/48 裸片:DICE(邦定COB)/COG(邦定玻璃用) 產(chǎn)品年份:新年份 聯(lián) 系 人:許碩 原廠直銷,工程服務(wù),技術(shù)支持,價格最具優(yōu)勢!QT394 VK2C23A/B概述: VK2C23A/B是一個點陣式存儲映射的LCD驅(qū)動器,可支持最大224點(56SEGx4COM)或者最大416點(52SEGx8COM)的LCD屏。單片機可通過I2C接口配置顯示參數(shù)和讀寫顯示數(shù)據(jù),也可通過指令進(jìn)入省電模式。其高抗干擾,低功耗的特性適用于水電氣表以及工控儀表類產(chǎn)品。 特點: ★ 工作電壓 2.4-5.5V ★ 內(nèi)置32 kHz RC振蕩器 ★ 偏置電壓(BIAS)可配置為1/3、1/4 ★ COM周期(DUTY)可配置為1/4、1/8 ★ 內(nèi)置顯示RAM為56x4位、52x8位 ★ 幀頻可配置為80Hz、160Hz ★ 省電模式(通過關(guān)顯示和關(guān)振蕩器進(jìn)入)
標(biāo)簽: VK2C I2C LCD 23 抗干擾 高穩(wěn)定 接口 控制 驅(qū)動IC
上傳時間: 2022-04-16
上傳用戶:2937735731
超聲理論與技術(shù)的快速發(fā)展,使超聲設(shè)備不斷更新,超聲檢查已成為預(yù)測和評價疾病及其治療結(jié)果不可缺少的重要方法。超聲診斷技術(shù)不僅具有安全、方便、無損、廉價等優(yōu)點,其優(yōu)越性還在于它選用診斷參數(shù)的多樣性及其在工程上實現(xiàn)的靈活性。 全數(shù)字B超診斷儀基于嵌入式ARM9+FPGA硬件平臺、LINUX嵌入式操作系統(tǒng),是一種新型的、操作方便的、技術(shù)含量高的機型。它具有現(xiàn)有黑白B超的基本功能,能夠?qū)Τ暬夭〝?shù)據(jù)進(jìn)行靈活的處理,從而使操作更加方便,圖象質(zhì)量進(jìn)一步提高,并為遠(yuǎn)程醫(yī)療、圖像存儲、拷貝等打下基礎(chǔ),是一種很有發(fā)展前景、未來市場的主打產(chǎn)品。全數(shù)字B型超聲診斷儀的基本技術(shù)特點是用數(shù)字硬件電路來實現(xiàn)數(shù)據(jù)量極其龐大的超聲信息的實時處理,它的實現(xiàn)主要倚重于FPGA技術(shù)。現(xiàn)在FPGA已經(jīng)成為多種數(shù)字信號處理(DSP)應(yīng)用的強有力解決方案。硬件和軟件設(shè)計者可以利用可編程邏輯開發(fā)各種DSP應(yīng)用解決方案。可編程解決方案可以更好地適應(yīng)快速變化的標(biāo)準(zhǔn)、協(xié)議和性能需求。 本論文首先闡述了醫(yī)療儀器發(fā)展現(xiàn)狀和嵌入式計算機體系結(jié)構(gòu)及發(fā)展?fàn)顩r,提出了課題研究內(nèi)容和目標(biāo)。然后從B超診斷原理及全數(shù)字B超診斷儀設(shè)計入手深入分析了B型超聲診斷儀的系統(tǒng)的硬件體系機構(gòu)。對系統(tǒng)的總體框架和ARM模塊設(shè)計做了描述后,接著分析了超聲信號進(jìn)行數(shù)字化處理的各個子模塊、可編程邏輯器件的結(jié)構(gòu)特點、編程原理、設(shè)計流程以及ARM處理模塊和FPGA模塊的主要通訊接口。接著,本論文介紹了基于ARM9硬件平臺的LINUX嵌入式操作系統(tǒng)的移植和設(shè)備驅(qū)動的開發(fā),詳細(xì)描述了B型超聲診斷儀的軟件環(huán)境的架構(gòu)及其設(shè)備驅(qū)動的詳細(xì)設(shè)計。最后對整個系統(tǒng)的功能和特點進(jìn)行了總結(jié)和展望。
標(biāo)簽: ARM 全數(shù)字 儀的設(shè)計 超聲診斷
上傳時間: 2013-05-28
上傳用戶:sssnaxie
針對目前使用的RS232接口數(shù)字化B超鍵盤存在PC主機啟動時不能設(shè)置BIOS,提出一種PS2鍵盤的設(shè)計方法。基于W78E052D單片機,采用8通道串行A/D轉(zhuǎn)換器設(shè)計了8個TGC電位器信息采集電路,電位器位置信息以鍵盤掃描碼序列形式發(fā)送,正交編碼器信號通過XC9536XL轉(zhuǎn)換為單片機可接收的中斷信號,軟件接收到中斷信息后等效處理成按鍵。結(jié)果表明,在滿足開機可設(shè)置BIOS同時,又可實現(xiàn)超聲特有功能,不需要專門設(shè)計驅(qū)動程序,接口簡單,成本低。 Abstract: Aiming at the problem of the digital ultrasonic diagnostic imaging system keyboard with RS232 interface currently used couldn?蒺t set the BIOS when the PC boot, this paper proposed a design method of PS2 keyboards. Based on W78E052D microcontroller,designed eight TGC potentiometers information acquisition circuit with 8-channel serial A/D converter, potentiometer position information sent out with keyboard scan code sequentially.The control circuit based on XC9536 CPLD is used for converting the mechanical actions of the encoders into the signals that can be identified by the MCU, software received interrupt information and equivalently treatmented as key. The results show that the BIOS can be set to meet the boot, ultrasound specific functionality can be achieved at the same time, it does not require specially designed driver,the interface is simple and low cost.
標(biāo)簽: 單片機 B超 數(shù)字化 鍵盤設(shè)計
上傳時間: 2013-10-10
上傳用戶:asdfasdfd
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1