【Codeforces Round #452 (Div. 2) B】Months and Years
【链接】 我是链接,点我呀:)
【题意】
在这里输入题意
【题解】
闰,平,平
平,闰,平
平,平,闰
平,平,平
4种情况都考虑到就好。
可能有重复的情况。
但是没关系啦。
【代码】
#include <bits/stdc++.h>
using namespace std;
const int N = 24;
int p[12] = {31,28,31,30,31,30,31,31,30,31,30,31};
int r[12] = {31,29,31,30,31,30,31,31,30,31,30,31};
vector <int> v;
void cl(int a[],int b[],int c[]){
v.clear();
for (int i = 0;i < 12;i++) v.push_back(a[i]);
for (int i = 0;i < 12;i++) v.push_back(b[i]);
for (int i = 0;i < 12;i++) v.push_back(c[i]);
}
int n;
int a[N+10];
int main(){
#ifdef LOCAL_DEFINE
freopen("rush_in.txt", "r", stdin);
#endif
ios::sync_with_stdio(0),cin.tie(0);
cin >> n;
for (int i = 1;i <= n;i++) cin >> a[i];
cl(r,p,p);
for (int i = 0;i < 36;i++)
{
int j = i+n-1;
if (j<36){
bool ok = true;
for (int k = i;k <= j;k++)
if (v[k]!=a[k-i+1]){
ok = false;
break;
}
if (ok){
cout <<"YES"<<endl;
return 0;
}
}
}
cl(p,r,p);
for (int i = 0;i < 36;i++)
{
int j = i+n-1;
if (j<36){
bool ok = true;
for (int k = i;k <= j;k++)
if (v[k]!=a[k-i+1]){
ok = false;
break;
}
if (ok){
cout <<"YES"<<endl;
return 0;
}
}
}
cl(p,p,r);
for (int i = 0;i < 36;i++)
{
int j = i+n-1;
if (j<36){
bool ok = true;
for (int k = i;k <= j;k++)
if (v[k]!=a[k-i+1]){
ok = false;
break;
}
if (ok){
cout <<"YES"<<endl;
return 0;
}
}
}
cl(p,p,p);
for (int i = 0;i < 36;i++)
{
int j = i+n-1;
if (j<36){
bool ok = true;
for (int k = i;k <= j;k++)
if (v[k]!=a[k-i+1]){
ok = false;
break;
}
if (ok){
cout <<"YES"<<endl;
return 0;
}
}
}
cout <<"NO"<<endl;
return 0;
}
【Codeforces Round #452 (Div. 2) B】Months and Years的更多相关文章
- 【Codeforces Round #452 (Div. 2) A】 Splitting in Teams
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 贪心 1优先和2组队. 如果1没有了 就结束. 如果1还有多余的. 那么就自己3个3个组队 [代码] #include <bi ...
- 【Codeforces Round #452 (Div. 2) C】 Dividing the numbers
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] n为偶数. l = 1, r = n (l,r)放在一组 l++,r-- 新的l,r放在另外一组 直到l+1==r 这个时候,判断两 ...
- 【Codeforces Round #452 (Div. 2) D】Shovel Sale
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 让N乘2->a 然后看一下位数是多少. 假设有x位(x>=2) 则(0..(a%10-1) ) + (99..9)[x- ...
- 【Codeforces Round #432 (Div. 1) B】Arpa and a list of numbers
[链接]h在这里写链接 [题意] 定义bad list是一个非空的.最大公约数为1的序列.给定一个序列,有两种操作:花费x将一个元素删除.花费y将一个元素加1,问你将这个序列变为good list所需 ...
- 【Codeforces Round #420 (Div. 2) C】Okabe and Boxes
[题目链接]:http://codeforces.com/contest/821/problem/C [题意] 给你2*n个操作; 包括把1..n中的某一个数压入栈顶,以及把栈顶元素弹出; 保证压入和 ...
- 【Codeforces Round #420 (Div. 2) B】Okabe and Banana Trees
[题目链接]:http://codeforces.com/contest/821/problem/B [题意] 当(x,y)这个坐标中,x和y都为整数的时候; 这个坐标上会有x+y根香蕉; 然后给你一 ...
- 【Codeforces Round #420 (Div. 2) A】Okabe and Future Gadget Laboratory
[题目链接]:http://codeforces.com/contest/821/problem/A [题意] 给你一个n*n的数组; 然后问你,是不是每个位置(x,y); 都能找到一个同一行的元素q ...
- 【Codeforces Round #423 (Div. 2) C】String Reconstruction
[Link]:http://codeforces.com/contest/828/problem/C [Description] 让你猜一个字符串原来是什么; 你知道这个字符串的n个子串; 且知道第i ...
- 【Codeforces Round #423 (Div. 2) B】Black Square
[Link]:http://codeforces.com/contest/828/problem/B [Description] 给你一个n*m的格子; 里面包含B和W两种颜色的格子; 让你在这个格子 ...
随机推荐
- vue2.0-elementUI
main.js import Vue from 'vue' import App from './App.vue' import ElementUI from 'element-ui' import ...
- @Not - Empty-Null-Blank
1 @NotEmpty :不能为null,且Size>0 2 @NotNull:不能为null,但可以为empty,没有Size的约束 3 @NotBlank:只用于String,不能为nu ...
- js --- 中字符串与unicode编码
1.charAt():把字符串分成每一个字符,从左往右提取指定位置的字符 var str = '天气'; alert( str.charAt(1) ); //气 2.charCo ...
- 【VC++学习笔记五】SDI|MDI的全屏显示
一.Mainframe中添加一个记录是否全屏状态的变量BOOL m_bFullScreen. 二.工具栏添加一个按钮,进行全屏的操作,响应事件函数写在Mainframe中. 三.在响应函数中,添加如下 ...
- 【Uva 1626】Brackets sequence
[Link]: [Description] 括号序列由这样的规则生成: 1.空字符是一个括号序列; 2.在括号序列两端加上一对括号也是括号序列; 如(s),[s]; 3.两个括号序列A和B,连在一起, ...
- 这是一套Java菜鸟到大牛的学习路线之高级教程,由工作了10年的资深Java架构师整理。
这是一套Java菜鸟到大牛的学习路线之高级教程,由工作了10年的资深Java架构师整理. 01-java高级架构师设计-基础深入 J2SE深入讲解 Java多 ...
- Python标准库:内置函数ascii(object)
这个函数跟repr()函数一样,返回一个可打印的对象字符串方式表示.当遇到非ASCII码时,就会输出\x,\u或\U等字符来表示. 与Python 2版本号里的repr()是等效的函数. 样例: #a ...
- python-安装xlrd xlwt 插件
最近需要对比两个表格的内容,然后修改其中的某列内容.因为工作量太大,所以想通过python来实现.上网查了相关的操作,其中牵扯到两个功能模块,xlrd xlwt.这两个功能模块分别是对excel进行读 ...
- 1.实用:Google Chrome 键盘快捷键大全
转自:https://www.cnbeta.com/articles/soft/64070.htm 窗口和标签页快捷方式 Ctrl+N 打开新窗口 按住 Ctrl 键,然后点击链接 在新标签页中打开 ...
- Kinect开发 —— 基础知识
转自:http://www.cnblogs.com/yangecnu/archive/2012/04/02/KinectSDK_Application_Fundamentals_Part2.html ...