各種棋子的走法如下:
二另外,在乙個局面中,如果一方棋子能夠走到的位置有對方將(帥)的存在,那麼該局面就稱為將軍局面,我們的任務就是找出這樣的局面。根據上述規則,我們很容易就能推斷出只有以下幾種方式才會造成將軍局面:
將(帥)照面。即將和帥在同一直線上。
馬對將(帥)的攻擊。(注意馬有蹩腳)
車對將(帥)的攻擊。
炮對將(帥)的攻擊。(注意炮要隔一子)
過河兵對將(帥)的攻擊。
輸入輸出
如果存在將軍局面,則輸出"yes"。反之,輸出"no"。
樣例輸入
2樣例輸出8 6 4 2 1 3 5 7 9
0 0 0 0 0 0 0 0 0
0 10 0 0 0 0 0 11 0
12 0 13 0 14 0 15 0 16
0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
28 0 29 0 30 0 31 0 32
0 26 0 0 0 0 0 27 0
0 0 0 0 0 0 0 0 0
24 22 20 18 17 19 21 23 25
8 6 4 2 1 3 5 0 9
0 0 0 0 0 0 0 0 0
0 10 0 0 0 0 7 11 0
12 0 13 0 14 0 15 0 16
0 0 0 0 0 0 0 0 0
0 0 0 0 27 0 0 0 0
28 0 29 0 30 0 31 0 32
0 26 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0
24 22 20 18 17 19 21 23 25
no提示yes
無**
timebug
沒啥好解釋,直接模擬。
1 #include 2 #include 3 #include 4 #include 5using
namespace
std;
6int borad[10][10];7
int f[4][2]=,ffma[8][2]=;
8int
hx,hy,bx,by;
9void
init()
101819}
20bool jug(int x,int
y)21
25bool is_che(int x,int
y)26
37 } p=y,q=x;
38while(1
)39
47 } p=y,q=x;
48while(1
)49
57 } p=y,q=x;
58while(1
)59 67}
68return
false;69
}70bool is_ma(int x,int
y)7183}
84}85return
false;86
}87bool is_pao(int x,int
y)88
101 } p=y,q=x;shan=0
;102
while(1
)103
111 } p=y,q=x;shan=0
;112
while(1
)113
121 } p=y,q=x;shan=0
;122
while(1
)123
131}
132return
false
;133
}134
bool is_jiang(int x,int
y)135
146else
if(borad[x][y]==17
)147
150}
151}
152int xx=x,yy=y;
153while(1
)154
163 }xx=x,yy=y;
164while(1
)165
174}
175return
false
;176
}177
bool check(int x,int
y)178
183if(borad[x][y]==6||borad[x][y]==7||borad[x][y]==22||borad[x][y]==23
)184
187if(borad[x][y]==10||borad[x][y]==11||borad[x][y]==26||borad[x][y]==27
)188
191if(borad[x][y]==1||borad[x][y]==17
)192
195return
false
;196
}197
void
solve()
198
205}
206if(flag)printf("
yes\n");
207else printf("
no\n");
208}
209int
main()
210
217return0;
218 }
NOJ1002 演算法實驗一 歸併排序
時限 1000ms 記憶體限制 10000k 總時限 3000ms 描述給定乙個數列,用歸併排序演算法把它排成公升序。輸入第一行是乙個整數n n不大於10000 表示要排序的數的個數 下面一行是用空格隔開的n個整數。輸出輸出排序後的數列,每個數字佔一行。輸入樣例 53 2 1 4 5 輸出樣例12 ...
遞迴分治篇 歸併排序NOJ1002
時限 1000ms 記憶體限制 10000k 總時限 3000ms 給定乙個數列,用歸併排序演算法把它排成公升序。第一行是乙個整數n n不大於10000 表示要排序的數的個數 下面一行是用空格隔開的n個整數。輸出排序後的數列,每個數字佔一行。二路歸併 自底向上 自頂向下 為什麼覺得自頂向下就是比自底...
拜占庭將軍問題
前進中的可信計算 拜占庭將軍問題 閔應驊 乙個可信的計算機系統必須容忍乙個或多個部件的失效。失效的部件可能送出相互矛盾的資訊給系統的其他部件。這正是目前網路安全要對付的情況,如銀行交易安全 存款安全。美國2001 9 11遭恐怖襲擊之後,大家普遍認識到銀行的異地備份非常重要。紐約的一家銀行可以在東京...