1. 程式人生 > >Codeforces Round #417 (Div. 2) A. Sagheer and Crossroads 模擬 枚舉

Codeforces Round #417 (Div. 2) A. Sagheer and Crossroads 模擬 枚舉

ces color 一次 name exit main cst space amp

Codeforces Round #417 (Div. 2)
A. Sagheer and Crossroads

模擬 枚舉

題意 一個紅綠燈 按逆時針方向一次給出各個路口的左轉,直行,右轉,以及行人車道
讓你判斷,汽車是否有可能撞到行人

註意 當前車道的左轉有可能撞到別的車道的行人的

題解 一大堆特判

 1 #include <cstdio>
 2 #include <cmath>
 3 #include <cstdlib>
 4 #include <cstring>
 5 #include <algorithm>
 6
#include <string> 7 #include <iomanip> 8 #include <iostream> 9 using namespace std ; 10 11 int a[5][5] ; 12 13 inline void die() 14 { 15 printf("YES\n") ; 16 exit(0) ; 17 } 18 19 int main() 20 { 21 for(int i=1;i<=4;i++) 22 for(int j=1;j<=4;j++) 23 scanf("
%d",&a[ i ][ j ]) ; 24 if(a[ 1 ][ 4 ]) 25 { 26 if(a[ 1 ][ 1 ]||a[ 1 ][ 2 ]||a[ 1 ][ 3 ]) die() ; 27 if(a[ 2 ][ 1 ]) die() ; 28 if(a[ 3 ][ 2 ]) die() ; 29 if(a[ 4 ][ 3 ]) die() ; 30 } 31 if(a[ 2 ][ 4 ]) 32 { 33 if(a[ 2 ][ 1 ]||a[ 2
][ 2 ]||a[ 2 ][ 3 ]) die() ; 34 if(a[ 3 ][ 1 ]) die() ; 35 if(a[ 4 ][ 2 ]) die() ; 36 if(a[ 1 ][ 3 ]) die() ; 37 } 38 if(a[ 3 ][ 4 ]) 39 { 40 if(a[ 3 ][ 1 ]||a[ 3 ][ 2 ]||a[ 3 ][ 3 ]) die() ; 41 if(a[ 4 ][ 1 ]) die() ; 42 if(a[ 1 ][ 2 ]) die() ; 43 if(a[ 2 ][ 3 ]) die() ; 44 } 45 if(a[ 4 ][ 4 ]) 46 { 47 if(a[ 4 ][ 1 ]||a[ 4 ][ 2 ]||a[ 4 ][ 3 ]) die() ; 48 if(a[ 4 ][ 2 ]) die() ; 49 if(a[ 1 ][ 1 ]) die() ; 50 if(a[ 2 ][ 2 ]) die() ; 51 if(a[ 3 ][ 3 ]) die() ; 52 } 53 printf("NO\n") ; 54 return 0 ; 55 }

Codeforces Round #417 (Div. 2) A. Sagheer and Crossroads 模擬 枚舉