Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
sizeof(0)...In Reply To://memset(visit, 0, sizeof(0)); //天呐天呐 谁告诉我为什么这行不行!!!!!!!!!!!!!!!!!1 Posted by:vince4053040 at 2010-02-06 12:45:37 > #include<iostream> > using namespace std; > > int main() > { > freopen("in.txt", "r", stdin); > char a, c, b, d; > int i; > int begin_i, end_i, begin_j, end_j; > int Row[65]; > int Col[65]; > int row, col; > int rear, front, temp, que[65]; > int visit[65][65]; > int move[8][2] = {{-2, -1}, {-2, 1}, {-1, -2}, {-1, 2}, {1, -2}, {1, 2}, {2, -1}, {2, 1}}; > while(cin >> a >> b >> c >> d) { //输入方式有诸多疑问 > begin_i = a - 'a', begin_j = b - '1', end_i = c - 'a', end_j = d - '1'; > for(i = 0; i < 8; i ++) > for(int j = 0; j < 8; j ++) > visit[i][j] = 0; //非要这样写?memset不行??????? > //memset(visit, 0, sizeof(0)); //天呐天呐 谁告诉我为什么这行不行!!!!!!!!!!!!!!!!!1 > front = rear = 0; > Row[0] = begin_i; > Col[0] = begin_j; > que[rear ++] = 0; > visit[begin_i][begin_j] = 1; > while(front < rear) { > temp = front ++; > if(Row[temp] == end_i && Col[temp] == end_j) > break; > for(i = 0; i < 8; i ++) { > row = Row[temp] + move[i][0]; > col = Col[temp] + move[i][1]; > if(row >= 0 && col >= 0 && row < 8 && col < 8 && visit[row][col] == 0) { > visit[row][col] = 1; > Row[rear] = row; > Col[rear] = col; > que[rear ++] = que[temp] + 1; > //cout << temp << endl; > } > } > } > cout << que[temp] << endl; > } > return 0; > } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator