CodeForces Round #529 Div.3
http://codeforces.com/contest/1095
#include <bits/stdc++.h>
using namespace std; int N;
string s;
string ans = ""; int main() {
scanf("%d", &N);
cin >> s;
int cnt = ;
for(int i = ; i < N;) {
ans += s[i];
cnt ++;
i += cnt;
}
cout << ans;
return ;
}
#include <bits/stdc++.h>
using namespace std; const int maxn = 1e5 + ;
int N;
int a[maxn]; int main() {
scanf("%d", &N);
for(int i = ; i < N; i ++)
scanf("%d", &a[i]); sort(a, a + N);
int ans1 = a[N - ] - a[];
int ans2 = a[N - ] - a[];
printf("%d\n", min(ans1, ans2));
return ;
}
#include <bits/stdc++.h>
using namespace std; int N, K;
priority_queue<int> q;
int cnt = ; int main() {
scanf("%d%d", &N, &K);
for(int i = ; i >= ; i --) {
if(N >= ( << i)) {
q.push(i);
N -= ( << i);
cnt ++;
}
} if(K < cnt) printf("NO\n");
else {
while(cnt < K) {
int rec = q.top();
if(rec == ) {
printf("NO\n");
return ;
} q.pop();
q.push(rec - );
q.push(rec - ); cnt ++;
} printf("YES\n");
while(!q.empty()) {
int t = q.top();
printf("%d ", ( << t));
q.pop();
} } return ;
}
#include <bits/stdc++.h>
using namespace std; const int maxn = 2e5 + ;
vector<int> v[maxn];
int a[maxn][], vis[maxn];
int N;
vector<int> ans; void dfs(int step) {
vis[step] = ;
ans.push_back(step);
for(int i = ; i < v[step].size(); i ++) {
if(!vis[v[step][i]] && (v[step][i] == a[step][] || v[step][i] == a[step][])) {
vis[v[step][i]] = ;
dfs(v[step][i]);
}
}
} int main() {
scanf("%d", &N);
for(int i = ; i <= N; i ++) {
int st, en;
scanf("%d%d", &st, &en);
a[i][] = st, a[i][] = en;
v[st].push_back(en);
v[en].push_back(st);
} dfs();
for(int i = ; i < ans.size(); i ++)
printf("%d%s", ans[i], i != ans.size() - ? " " : "\n"); return ;
}
E. Almost Regular Bracket Sequence
(合法的括号匹配串的充要条件是 ① 前 i 项 前缀和非负 ② sum[N] == 0)
#include <bits/stdc++.h>
using namespace std; const int maxn = 1e6 + ;
int N;
string s;
int a[maxn], sum[maxn], b[maxn], c[maxn]; int main() {
cin >> N >> s;
for(int i = ; i < N; i ++) {
if(s[i] == '(')
a[i] = ;
else a[i] = -;
} sum[] = a[];
for(int i = ; i < N; i ++)
sum[i] = a[i] + sum[i - ]; c[] = sum[];
for(int i = ; i < N; i ++)
c[i] = min(c[i - ], sum[i]); b[N - ] = sum[N - ];
for(int i = N - ; i >= ; i --)
b[i] = min(sum[i], b[i + ]); int ans = ;
for(int i = ; i < N; i ++) {
if(s[i] == '(') {
if(c[i - ] >= && b[i] - >= && sum[N - ] - == ) ans ++;
} else {
if(c[i - ] >= && b[i] + >= && sum[N - ] + == ) ans ++;
}
} printf("%d\n", ans); return ;
}
(很久没写最小生成树 这个先留一哈)
写的好烦 脑子不好用 想不到 然后开始吃薯片 还是暴躁 越来越暴躁 在放弃的边缘大鹏展翅 所以完全不想看题目 想豁奶茶想吹风
CodeForces Round #529 Div.3的更多相关文章
- # Codeforces Round #529(Div.3)个人题解
Codeforces Round #529(Div.3)个人题解 前言: 闲来无事补了前天的cf,想着最近刷题有点点怠惰,就直接一场cf一场cf的刷算了,以后的题解也都会以每场的形式写出来 A. Re ...
- Codeforces Round #529 (Div. 3) E. Almost Regular Bracket Sequence (思维)
Codeforces Round #529 (Div. 3) 题目传送门 题意: 给你由左右括号组成的字符串,问你有多少处括号翻转过来是合法的序列 思路: 这么考虑: 如果是左括号 1)整个序列左括号 ...
- Codeforces Round #529 (Div. 3) 题解
生病康复中,心情很不好,下午回苏州. 刷了一套题散散心,Div 3,全部是 1 A,感觉比以前慢了好多好多啊. 这几天也整理了一下自己要做的事情,工作上要努力... ... 晚上还是要认认真真背英语的 ...
- Codeforces Round #529 (Div. 3) C. Powers Of Two
http://codeforces.com/contest/1095/problem/C 题意:给n找出k个2的幂,加起来正好等于n.例如 9,4:9 = 1 + 2 + 2 + 4 思路:首先任何数 ...
- Codeforces Round #529 (Div. 3) C. Powers Of Two(数学????)
传送门 题意: 给出一个整数 n ,问能否将 n 分解成 k 个数之和,且这 k 个数必须是2的幂. 如果可以,输出"YES",并打印出任意一组解,反之输出"NO&quo ...
- Codeforces Round #529 (Div. 3) F.Make It Connected
传送门 题意: 有 n 个顶点,每个顶点有个花费 a[ i ],连接顶点 u,v 需要花费 a[v]+a[u]的代价. 有 m 个特殊边,每条边有三个参数 u,v,w 代表的意思是连接 u,v 的花费 ...
- Codeforces Round #529 (Div. 3) D. Circular Dance
传送门 题意: 有 n 个孩子编号为 1~n ,绕着圣诞树 dance: 编号为 i 的孩子可以记住ai1,ai2两个小孩,ai1,ai2是 i 在顺时针方向的相邻的两个小孩,但ai1,ai2不一定是 ...
- Codeforces Round #529 (Div. 3) E. Almost Regular Bracket Sequence(思维)
传送门 题意: 给你一个只包含 '(' 和 ')' 的长度为 n 字符序列s: 给出一个操作:将第 i 个位置的字符反转('(' ')' 互换): 问有多少位置反转后,可以使得字符串 s 变为&quo ...
- Codeforces Round #529 (Div. 3) F. Make It Connected (贪心,最小生成树)
题意:给你\(n\)个点,每个点都有权值,现在要在这\(n\)个点中连一颗最小树,每两个点连一条边的边权为两个点的点权,现在还另外给了你几条边和边权,求最小权重. 题解:对于刚开始所给的\(n\)个点 ...
随机推荐
- 优雅的使用Spring
Bean声明的三种方式: 1.@Component, @Service, @Repository,@Controller 用于声明一个组件,程序启动时会扫描这些组件,并创建实例. 2.在applica ...
- Java中使用elasticsearch搜索引擎实现简单查询、修改等操作-已在项目中实际应用
以下的操作环境为:jdk:1.8:elasticsearch:5.2.0 maven架包下载坐标为: <dependency> <groupId>org.elasticsear ...
- MYSQL基本操作(上)
很久之前,就想做个Mysql的小结,毕竟数据库知识是软件研发的基本技能,这里话不多说,开始总结一波. 数据库基本概念 数据库为高效的存储和处理数据的介质(主要分为磁盘和内存两种),一般关系型数据库存储 ...
- JZOJ 5602.【NOI2018模拟3.26】Cti
JZOJ 5602.[NOI2018模拟3.26]Cti Description 有一个 \(n×m\) 的地图,地图上的每一个位置可以是空地,炮塔或是敌人.你需要操纵炮塔消灭敌人. 对于每个炮塔都有 ...
- C#深度学习のTask(基于任务的异步模型)
一.Task关键字解释 Task 类的表示的单个操作不会返回一个值,通常以异步方式执行. Task 对象是一种的中心思想 基于任务的异步编程模式 首次引入.NET Framework 4 中. 因为由 ...
- Zookeeper的一致性
转载:http://flyfoxs.iteye.com/blog/2121560 下面内容主要摘抄于<<Hadoop实战>>,红色高亮部分是本人添加的白话注释. Zookeep ...
- form表单post请求乱码问题
今天做一个查询的小模块遇到了 请求乱码的问题,表单请求方式是post 解决方法是在web.xml 文件中配置一下内容 <!--配置解决post乱码问题filter --> <filt ...
- 2.05-random-uesr-proxy
import urllib.request def proxy_user(): proxy_list = [ {"https":""}, # {"ht ...
- 原生javascript实现回到顶部平滑滚动
function rt() { var d = document, dd = document.documentElement, db = document.body, top = dd.scroll ...
- [Git] Git操作命令
基础操作 git配置 git config --global user.name "Your Name" git config --global user.email " ...