题目链接:http://codeforces.com/contest/812/problem/A
题意:有一个四字路口,具体题目的图就好,左转弯,直走,右转弯和斑马线各有一个红绿灯,让你输入四组数据,每组输入四个整数,0表示红灯,1表示绿灯,问你是否会发生交通事故,如果会,就输出YES,否则就输出NO
解析:题目有一个很奇怪的定义,就是发生交通事故是指车撞到人才算交通事故,其他不算,那么只需要直接判断每个p和哪些冲突就好
#include <bits/stdc++.h>
using namespace std;
int main(void)
{
int l[4],s[4],r[4],p[4];
for(int i=0;i<4;i++)
scanf("%d %d %d %d",&l[i],&s[i],&r[i],&p[i]);
int flag = 0;
if(p[0]&&(l[0]||s[0]||r[0]||l[1]||s[2]||r[3]))
flag = 1;
if(p[1]&&(l[1]||s[1]||r[1]||r[0]||l[2]||s[3]))
flag = 1;
if(p[2]&&(l[2]||s[2]||r[2]||s[0]||r[1]||l[3]))
flag = 1;
if(p[3]&&(l[3]||s[3]||r[3]||l[0]||s[1]||r[2]))
flag = 1;
if(flag)
puts("YES");
else
puts("NO");
return 0;
}