-
【問題描述】
在一個(gè)N*N的點(diǎn)陣中,如N=4,你現(xiàn)在站在(1,1),出口在(4,4)。你可以通過上、下、左、右四種移動(dòng)方法,在迷宮內(nèi)行走,但是同一個(gè)位置不可以訪問兩次,亦不可以越界。表格最上面的一行加黑數(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個(gè)數(shù),表示a[1]..a[n]。第三行有n個(gè)數(shù),表示b[1]..b[n]。
【輸出格式】
僅有一行。若有解則輸出一條可行路線,否則輸出“NO ANSWER”。
標(biāo)簽:
點(diǎn)陣
上傳時(shí)間:
2014-06-21
上傳用戶:llandlu
-
實(shí)驗(yàn)源代碼
//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é)實(shí)驗(yàn)報(bào)告 printf("請輸入矩陣的列數(shù) j: "); scanf("%d",&n); warshall(k,n); }
標(biāo)簽:
warshall
離散
實(shí)驗(yàn)
上傳時(shí)間:
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<<"個(gè):"<<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<<"計(jì)算U得:"<<endl;
U.Disp();
cout<<"計(jì)算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)簽:
道理特分解法
上傳時(shí)間:
2018-05-20
上傳用戶:Aa123456789
-
ADS1256 是TI(Texas I nstruments )公司推出的一款低噪聲高分辨率的24 位Si gma - Delta("- #)模數(shù)轉(zhuǎn)換器(ADC)。"- #ADC 與傳統(tǒng)的逐次逼近型和積分型ADC 相比有轉(zhuǎn)換誤差小而價(jià)格低廉的優(yōu)點(diǎn),但由于受帶寬和有效采樣率的限制,"- #ADC 不適用于高頻數(shù)據(jù)采集的場合。該款A(yù)DS1256 可適合于采集最高頻率只有幾千赫茲的模擬數(shù)據(jù)的系統(tǒng)中,數(shù)據(jù)輸出速率最高可為30K 采樣點(diǎn)/秒(SPS),有完善的自校正和系統(tǒng)校正系統(tǒng), SPI 串行數(shù)據(jù)傳輸接口。本文結(jié)合筆者自己的應(yīng)用經(jīng)驗(yàn),對該ADC 的基本原理以及應(yīng)用做簡要介紹。ADs1256 的總體電氣特性下面介紹在使用ADs1256 的過程中要注意的一些電氣方面的具體參數(shù):模擬電源(AVDD )輸入范圍+ 4 . 75V !+ 5 .25V,使用的典型值為+ 5 .00V;數(shù)字電源(DVDD )輸入范圍+ 1 . 8V !+ 3 .6V,使用的典型值+ 3 .3V;參考電壓值(VREF= VREFP- VREFN)的范圍+ 0 .5V!+ 2 .6V,使用的典型值為+ 2 .5V;耗散功率最大為57mW;每個(gè)模擬輸入端(AI N0 !7 和AI NC M)相對于模擬地(AGND)的絕對電壓值范圍在輸入緩沖器(BUFFER)關(guān)閉的時(shí)候?yàn)锳GND-0 .1 !AVDD+ 0 . 1 ,在輸入緩沖器打開的時(shí)候?yàn)锳GND !AVDD-2 .0 ;滿刻度差分模擬輸入電壓值(VI N = AI NP -AI NN)為+ /-(2VREF/PGA);數(shù)字輸入邏輯高電平范圍0 .8DVDD!5 .25V(除D0 !D3 的輸入點(diǎn)平不可超過DVDD 外),邏輯低點(diǎn)平范圍DGND!0 .2DVDD;數(shù)字輸出邏輯高電平下限為0 .8DVDD,邏輯低電平上限為0 .2DVDD,輸出電流典型值為5mA;主時(shí)鐘頻率由外部晶體振蕩器提供給XTAL1和XTAL2 時(shí),要求范圍為2 M!10 MHz ,僅由CLKI N 輸入提供時(shí),范圍為0 .1 M!10 MHz 。
標(biāo)簽:
ADC
ADS1256
上傳時(shí)間:
2022-06-10
上傳用戶:
-
AR0231AT7C00XUEA0-DRBR(RGB濾光)安森美半導(dǎo)體推出采用突破性減少LED閃爍 (LFM)技術(shù)的新的230萬像素CMOS圖像傳感器樣品AR0231AT,為汽車先進(jìn)駕駛輔助系統(tǒng)(ADAS)應(yīng)用確立了一個(gè)新基準(zhǔn)。新器件能捕獲1080p高動(dòng)態(tài)范圍(HDR)視頻,還具備支持汽車安全完整性等級B(ASIL B)的特性。LFM技術(shù)(專利申請中)消除交通信號燈和汽車LED照明的高頻LED閃爍,令交通信號閱讀算法能于所有光照條件下工作。AR0231AT具有1/2.7英寸(6.82 mm)光學(xué)格式和1928(水平) x 1208(垂直)有源像素陣列。它采用最新的3.0微米背照式(BSI)像素及安森美半導(dǎo)體的DR-Pix?技術(shù),提供雙轉(zhuǎn)換增益以在所有光照條件下提升性能。它以線性、HDR或LFM模式捕獲圖像,并提供模式間的幀到幀情境切換。 AR0231AT提供達(dá)4重曝光的HDR,以出色的噪聲性能捕獲超過120dB的動(dòng)態(tài)范圍。AR0231AT能同步支持多個(gè)攝相機(jī),以易于在汽車應(yīng)用中實(shí)現(xiàn)多個(gè)傳感器節(jié)點(diǎn),和通過一個(gè)簡單的雙線串行接口實(shí)現(xiàn)用戶可編程性。它還有多個(gè)數(shù)據(jù)接口,包括MIPI(移動(dòng)產(chǎn)業(yè)處理器接口)、并行和HiSPi(高速串行像素接口)。其它關(guān)鍵特性還包括可選自動(dòng)化或用戶控制的黑電平控制,支持?jǐn)U頻時(shí)鐘輸入和提供多色濾波陣列選擇。封裝和現(xiàn)狀:AR0231AT采用11 mm x 10 mm iBGA-121封裝,現(xiàn)提供工程樣品。工作溫度范圍為-40℃至105℃(環(huán)境溫度),將完全通過AEC-Q100認(rèn)證。
標(biāo)簽:
圖像傳感器
上傳時(shí)間:
2022-06-27
上傳用戶:XuVshu
-
設(shè)B是一個(gè)n×n棋盤,n=2k,(k=1,2,3,…)。用分治法設(shè)計(jì)一個(gè)算法,使得:用若干個(gè)L型條塊可以覆蓋住B的除一個(gè)特殊方格外的所有方格。其中,一個(gè)L型條塊可以覆蓋3個(gè)方格。且任意兩個(gè)L型條塊不能重疊覆蓋棋盤
標(biāo)簽:
上傳時(shí)間:
2013-12-16
上傳用戶:腳趾頭
-
Problem B:Longest Ordered Subsequence
A numeric sequence of ai is ordered if a1 < a2 < ... < aN. Let the subsequence of the given numeric sequence (a1, a2, ..., aN) be any sequence (ai1, ai2, ..., aiK), where 1 <= i1 < i2 < ... < iK <= N. For example, sequence (1, 7, 3, 5, 9, 4, 8) has ordered subsequences, e. g., (1, 7), (3, 4, 8) and many others. All longest ordered subsequences are of length 4, e. g., (1, 3, 5, 8).
標(biāo)簽:
Subsequence
sequence
Problem
Longest
上傳時(shí)間:
2016-12-08
上傳用戶:busterman
-
兩臺(tái)處理機(jī)A 和B處理n個(gè)作業(yè)。設(shè)第i個(gè)作業(yè)交給機(jī)器
A 處理時(shí)需要時(shí)間ai,若由機(jī)器B 來處理,則需要時(shí)間bi。由于各作
業(yè)的特點(diǎn)和機(jī)器的性能關(guān)系,很可能對于某些i,有ai >=bi,而對于
某些j,j!=i,有aj<bj。既不能將一個(gè)作業(yè)分開由兩臺(tái)機(jī)器處理,也沒
有一臺(tái)機(jī)器能同時(shí)處理2 個(gè)作業(yè)。設(shè)計(jì)一個(gè)動(dòng)態(tài)規(guī)劃算法,使得這兩
臺(tái)機(jī)器處理完成這n 個(gè)作業(yè)的時(shí)間最短(從任何一臺(tái)機(jī)器開工到最后
一臺(tái)機(jī)器停工的總時(shí)間)。研究一個(gè)實(shí)例:(a1,a2,a3,a4,a5,a6)=
(2,5,7,10,5,2);(b1,b2,b3,b4,b5,b6)=(3,8,4,11,3,4)
標(biāo)簽:
處理機(jī)
機(jī)器
上傳時(shí)間:
2014-01-14
上傳用戶:獨(dú)孤求源
-
設(shè)B是一個(gè)n×n棋盤,n=2k,(k=1,2,3,…)。用分治法設(shè)計(jì)一個(gè)算法,使得:用若干個(gè)L型條塊可以覆蓋住B的除一個(gè)特殊方格外的所有方格。其中,一個(gè)L型條塊可以覆蓋3個(gè)方格。且任意兩個(gè)L型條塊不能重疊覆蓋棋盤。
標(biāo)簽:
上傳時(shí)間:
2013-12-19
上傳用戶:xc216
-
計(jì)算矩陣連乘積 問題描述 在科學(xué)計(jì)算中經(jīng)常要計(jì)算矩陣的乘積。矩陣A和B可乘的條件是矩陣A的列數(shù)等于矩陣B的行數(shù)。若A是一個(gè)p×q的矩陣,B是一個(gè)q×r的矩陣,則其乘積C=AB是一個(gè)p×r的矩陣。
標(biāo)簽:
矩陣
計(jì)算
上傳時(shí)間:
2015-03-25
上傳用戶:yulg