博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CodeForces Round #545 Div.2
阅读量:5239 次
发布时间:2019-06-14

本文共 2300 字,大约阅读时间需要 7 分钟。

代码:

#include 
using namespace std;const int maxn = 1e5 + 10;int N, cnt = 0;int a[maxn], vis[maxn];int main() { scanf("%d", &N); for(int i = 1; i <= N; i ++) scanf("%d", &a[i]); int l = 1, r = 1; while(l <= N && r <= N) { while(a[l] == a[r] && r <= N) vis[cnt] ++, r ++; cnt ++; l = r; } int maxx = 0; for(int i = 0; i < cnt - 1; i ++) { int t = min(vis[i], vis[i + 1]); maxx = max(t * 2, maxx); } printf("%d\n", maxx); return 0;}
View Code

代码:

#include 
using namespace std;const int maxn = 1e5 + 10;int N;string s, t;int A, B ,C, D;int a, b, c, d;int main() { scanf("%d", &N); cin >> s >> t; for(int i = 0; i < N; i ++) { if(s[i] == '0') { if(t[i] == '0') A ++; else B ++; } else { if(t[i] == '0') C ++; else D ++; } } bool flag = false; for(a = 0; a <= A && a <= N / 2; a ++) { int t1 = a + B + D - N / 2; if(t1 >= 0 && t1 <= N / 2 && t1 <= D) { d = t1; for(b = 0; b <= B && b <= N / 2; b ++) { int t2 = N / 2 - a - b - d; if(t2 >= 0 && t2 <= C && t2 <= N / 2) { c = t2; flag = true; break; } } if(flag) break; } } if(flag) { vector
ans; for(int i = 0; i < N; i ++) { if(s[i] == '0') { if(a && t[i] == '0') { ans.push_back(i + 1); a --; } else if(b && t[i] == '1') { ans.push_back(i + 1); b --; } } else { if(c && t[i] == '0') { ans.push_back(i + 1); c --; } else if(d && t[i] == '1') { ans.push_back(i + 1); d --; } } } for(int i = 0; i < ans.size(); i ++) printf("%d%s", ans[i], i != ans.size() - 1 ? " " : "\n"); } else printf("-1\n"); return 0;}
View Code

D 很简单的 KMP 求出来 nx[t.length()] 然后求出来最小循环节 先把最小循环节前面的部分输出然后输出最小循环节最后把剩下的输出 我是。。真滴不想写了

转载于:https://www.cnblogs.com/zlrrrr/p/10747139.html

你可能感兴趣的文章
读书_2019年
查看>>
读书汇总贴
查看>>
微信小程序 movable-view组件应用:可拖动悬浮框_返回首页
查看>>
MPT树详解
查看>>
空间分析开源库GEOS
查看>>
RQNOJ八月赛
查看>>
前端各种mate积累
查看>>
jQuery 1.7 发布了
查看>>
Python(软件目录结构规范)
查看>>
Windows多线程入门のCreateThread与_beginthreadex本质区别(转)
查看>>
Nginx配置文件(nginx.conf)配置详解1
查看>>
linux php编译安装
查看>>
name phone email正则表达式
查看>>
721. Accounts Merge
查看>>
「Unity」委托 将方法作为参数传递
查看>>
重置GNOME-TERMINAL
查看>>
redis哨兵集群、docker入门
查看>>
hihoCoder 1233 : Boxes(盒子)
查看>>
oracle中anyData数据类型的使用实例
查看>>
C++对vector里面的元素排序及取任意重叠区间
查看>>