本文主要是介绍CodeForces 812A-Sagheer and Crossroads,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
-
CodeForces 812A-Sagheer and Crossroads
-
题目链接:A. Sagheer and Crossroads
-
思路:
题目大意是有一个交叉路口,每个路口有三个方向(l,s,r)左,中,以及通过该路口的人行道p,如果交叉路口有车行驶方向能朝向某一人行道,有可能发送事故,1表示绿灯可行,0表示红灯不可行,给定路况,可能发生事故输出YES,否则NO
以路口1的人行道p1为例,有可能发生事故可能是 路口一三个方向,路口二左,路口三中,路口四右,而且必须是绿灯下
int Direct[4][4]={{1,0,1,2},{2,1,0,1},{1,2,1,0},{0,1,2,1}}; 行表示路口,列表示每个路口车方向可能造成事故的
刚开始没考虑同路口右或左也有可能发生事故,后面补上了
-
代码:
#include<iostream>
using namespace std;int Direct[4][4]={{1,0,1,2},{2,1,0,1},{1,2,1,0},{0,1,2,1}};
int Road[4][4];
int main()
{for(int i=0;i<4;i++)for(int j=0;j<4;j++)cin>>Road[i][j];for(int i=0;i<4;i++){if(Road[i][3]){if(Road[i][0]==1||Road[i][1]==1||Road[i][2]==1) //同路口三个方向{cout<<"YES"<<endl;return 0;}for(int j=0;j<4;j++){if(Road[j][Direct[i][j]]) //每个路口可能造成的事故{cout<<"YES"<<endl;return 0;}}}}cout<<"NO"<<endl;return 0;
}
这篇关于CodeForces 812A-Sagheer and Crossroads的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!