CF812A Sagheer and Crossroads 题解
Content
有一个十字路口,从最下面的部分开始,逆时针依次标号为 \(1,2,3,4\)。每个部分有四个灯,分别为左转的灯、直行的灯、右转的灯以及人行通道灯(只有可能为红灯和绿灯)。如果某个部分的人行横道的灯光和可以到达或离开该部分的车道的灯光同时为绿灯,则可能会发生交通事故。现在,给出四个部分的 \(16\) 个灯的情况(\(0\) 表示红灯、\(1\) 表示绿灯),请你预测是否会发生交通事故。
Solution
直接暴力判断情况即可,只不过判断的条件有些多罢了。
这里借用一下题面的图来详细讲解:
我们可以很容易地发现,只要人行横道灯是绿色,并且在这个部分中左转、直行、右转的灯中有一个灯亮绿灯,那么就会发生交通事故。
当然,除了上面这些以外,还有一些情况也会发生交通事故:
- \(1\) 号部分的人行横道灯亮绿灯,并且 \(2\) 号部分的左转灯、\(3\) 号部分的直行灯、\(4\) 号部分的右转灯中有一个灯亮绿灯。
- \(2\) 号部分的人行横道灯亮绿灯,并且 \(1\) 号部分的右转灯、\(3\) 号部分的左转灯、\(4\) 号部分的直行灯中有一个灯亮绿灯。
- \(3\) 号部分的人行横道灯亮绿灯,并且 \(1\) 号部分的直行灯、\(2\) 号部分的右转灯、\(4\) 号部分的左转灯中有一个灯亮绿灯。
- \(4\) 号部分的人行横道灯亮绿灯,并且 \(1\) 号部分的左转灯、\(2\) 号部分的直行灯、\(3\) 号部分的右转灯中有一个灯亮绿灯。
上面这些都用一个 \(\texttt{if}\) 来判断就好。条件很多,需要细心和耐心。
Code
#include <cstdio>
#include <cstring>
#include <cmath>
#include <iostream>
#include <algorithm>
#include <cmath>
using namespace std;
int l[7], r[7], s[7], p[7];
int main() {
for(int i = 1; i <= 4; ++i) scanf("%d%d%d%d", &l[i], &s[i], &r[i], &p[i]);
if((p[1] && (l[1] || s[1] || r[1] || l[2] || s[3] || r[4])) || (p[2] && (r[1] || l[2] || s[2] || r[2] || l[3] || s[4])) || (p[3] && (s[1] || r[2] || l[3] || s[3] || r[3] || l[4])) || (p[4] && (l[1] || s[2] || r[3] || l[4] || s[4] || r[4]))) printf("YES");
else printf("NO");
return 0;
}
CF812A Sagheer and Crossroads 题解的更多相关文章
- Codeforces812A Sagheer and Crossroads 2017-06-02 20:41 139人阅读 评论(0) 收藏
A. Sagheer and Crossroads time limit per test 1 second memory limit per test 256 megabytes input sta ...
- AC日记——Sagheer and Crossroads codeforces 812a
812A - Sagheer and Crossroads 思路: 模拟: 代码: #include <cstdio> #include <cstring> #include ...
- 【codeforces 812A】Sagheer and Crossroads
[题目链接]:http://codeforces.com/contest/812/problem/A [题意] 有一个小箭头指的那个地方; 指的就是人行道路; 然后p[i]指的就是那4个人行道是不是绿 ...
- Codeforces Round #417 (Div. 2)A B C E 模拟 枚举 二分 阶梯博弈
A. Sagheer and Crossroads time limit per test 1 second memory limit per test 256 megabytes input sta ...
- [Codeforces Round#417 Div.2]
来自FallDream的博客,未经允许,请勿转载,谢谢. 有毒的一场div2 找了个1300的小号,结果B题题目看错没交 D题题目剧毒 E题差了10秒钟没交上去. 233 ------- A.Sag ...
- Codeforces Round #417 (Div. 2) 花式被虐
A. Sagheer and Crossroads time limit per test 1 second memory limit per test 256 megabytes input sta ...
- codeforces round 417 div2 补题 CF 812 A-E
A Sagheer and Crossroads 水题略过(然而被Hack了 以后要更加谨慎) #include<bits/stdc++.h> using namespace std; i ...
- codeforces 812E Sagheer and Apple Tree(思维、nim博弈)
codeforces 812E Sagheer and Apple Tree 题意 一棵带点权有根树,保证所有叶子节点到根的距离同奇偶. 每次可以选择一个点,把它的点权删除x,它的某个儿子的点权增加x ...
- Codeforces Round #417 (Div. 2) B. Sagheer, the Hausmeister —— DP
题目链接:http://codeforces.com/problemset/problem/812/B B. Sagheer, the Hausmeister time limit per test ...
随机推荐
- 第04章_MySQL运算符详解
第04章_运算符 1. 算术运算符 算术运算符主要用于数学运算,其可以连接运算符前后的两个数值或表达式,对数值或表达式进行加(+).减(-).乘(*).除(/)和取模(%)运算. 1.加法与减法运算符 ...
- 『学了就忘』Linux权限管理 — 53、ACL权限详解
目录 1.什么是ACL权限 2.开启ACL 3.ACL权限的相关命令 (1)设定ACL权限 (2)查询文件的ACL权限 (3)设置文件ACL权限给用户组 (4)给文件夹和里边的文件同时赋予ACL权限 ...
- Atcoder 2444 - JOIOI 王国(二分)
题面传送门 记 \(mxi\) 为 IOI 国海拔的最大值,\(mni\) 为 IOI 国海拔的最小值,\(mxj\) 为 JOI 国海拔的最大值,\(mnj\) 为 JOI 国海拔的最小值. 不难发 ...
- Codeforces 547E - Mike and Friends(AC 自动机+树状数组)
题面传送门 好久每做过 AC 自动机的题了--做几个题回忆一下罢 AC 自动机能够解决多串匹配问题,注意是匹配,碰到前后缀的问题那多半不在 AC 自动机能解决的范围内. 在初学 AC 自动机的时候相信 ...
- 【GS文献】基因组选择在植物分子育种应用的最新综述(2020)
目录 1. 简介 2. BLUP类模型 3. Bayesian类模型 4. 机器学习 5. GWAS辅助的GS 6. 杂交育种 7. 多性状 8. 长期选择 9. 预测准确性评估 10. GS到植物育 ...
- Synteny和collinear的区别
在比较基因组学的时候,经常会听到"共线性"这个词,但是与其对应的有两个不同的概念,即 (1) synteny (2) collinear 二者的区别如下图所示: 可以看到,synt ...
- MYSQL5.8----M4-5
mysql> CREATE TABLE joson( id INT AUTO_INCREMENT PRIMARY KEY, context JSON NOT NULL)// Query OK, ...
- R包 tidyverse 分列
代码: 1 library(tidyverse) 2 separate(data = df,col=chr_pos,into=c("chr","pos"),se ...
- C 语言do while 循环
do while 循环小练习 1 #include <stdio.h> 2 #include <stdlib.h> 3 4 int main(void) 5 { 6 int a ...
- Perl哈希%hash
哈希是 key/value 键/值对的集合. Perl中哈希变量以百分号 (%) 标记开始. 访问哈希元素格式:${key}. 以下是一个简单的哈希实例: 实例 #!/usr/bin/perl %da ...