http://codeforces.com/contest/1095

A. Repeating Cipher

#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 ;
}

B. Array Stabilization

#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 ;
}

C. Powers Of Two

#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 ;
}

D. Circular Dance

#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 ;
}

F. Make It Connected

(很久没写最小生成树 这个先留一哈)

写的好烦 脑子不好用 想不到 然后开始吃薯片 还是暴躁 越来越暴躁 在放弃的边缘大鹏展翅 所以完全不想看题目 想豁奶茶想吹风 

CodeForces Round #529 Div.3的更多相关文章

  1. # Codeforces Round #529(Div.3)个人题解

    Codeforces Round #529(Div.3)个人题解 前言: 闲来无事补了前天的cf,想着最近刷题有点点怠惰,就直接一场cf一场cf的刷算了,以后的题解也都会以每场的形式写出来 A. Re ...

  2. Codeforces Round #529 (Div. 3) E. Almost Regular Bracket Sequence (思维)

    Codeforces Round #529 (Div. 3) 题目传送门 题意: 给你由左右括号组成的字符串,问你有多少处括号翻转过来是合法的序列 思路: 这么考虑: 如果是左括号 1)整个序列左括号 ...

  3. Codeforces Round #529 (Div. 3) 题解

    生病康复中,心情很不好,下午回苏州. 刷了一套题散散心,Div 3,全部是 1 A,感觉比以前慢了好多好多啊. 这几天也整理了一下自己要做的事情,工作上要努力... ... 晚上还是要认认真真背英语的 ...

  4. 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 思路:首先任何数 ...

  5. Codeforces Round #529 (Div. 3) C. Powers Of Two(数学????)

    传送门 题意: 给出一个整数 n ,问能否将 n 分解成 k 个数之和,且这 k 个数必须是2的幂. 如果可以,输出"YES",并打印出任意一组解,反之输出"NO&quo ...

  6. Codeforces Round #529 (Div. 3) F.Make It Connected

    传送门 题意: 有 n 个顶点,每个顶点有个花费 a[ i ],连接顶点 u,v 需要花费 a[v]+a[u]的代价. 有 m 个特殊边,每条边有三个参数 u,v,w 代表的意思是连接 u,v 的花费 ...

  7. Codeforces Round #529 (Div. 3) D. Circular Dance

    传送门 题意: 有 n 个孩子编号为 1~n ,绕着圣诞树 dance: 编号为 i 的孩子可以记住ai1,ai2两个小孩,ai1,ai2是 i 在顺时针方向的相邻的两个小孩,但ai1,ai2不一定是 ...

  8. Codeforces Round #529 (Div. 3) E. Almost Regular Bracket Sequence(思维)

    传送门 题意: 给你一个只包含 '(' 和 ')' 的长度为 n 字符序列s: 给出一个操作:将第 i 个位置的字符反转('(' ')' 互换): 问有多少位置反转后,可以使得字符串 s 变为&quo ...

  9. Codeforces Round #529 (Div. 3) F. Make It Connected (贪心,最小生成树)

    题意:给你\(n\)个点,每个点都有权值,现在要在这\(n\)个点中连一颗最小树,每两个点连一条边的边权为两个点的点权,现在还另外给了你几条边和边权,求最小权重. 题解:对于刚开始所给的\(n\)个点 ...

随机推荐

  1. jQuery -- 光阴似箭(五):AJAX 方法

    jQuery -- 知识点回顾篇(五):AJAX 方法 1. $.ajax 方法:用于执行 AJAX(异步 HTTP)请求. <!DOCTYPE html> <html> &l ...

  2. python 基础操作--数据类型

    一.变量 1.定义:将运算的中间结果暂存到内存,以便后续程序调用. 2.命名规则 1.变量由字母.数字.下划线搭配组合而成: 2.不可以用数字开头,也不能全都是数字: 3.不能是python 关键字, ...

  3. router-link 自定义点击事件

    <li v-for="(item, index) in menuList"> <router-link class="classify" ta ...

  4. BZOJ 4820 [SDOI2017] 硬币游戏

    Description 周末同学们非常无聊,有人提议,咱们扔硬币玩吧,谁扔的硬币正面次数多谁胜利.大家纷纷觉得这个游戏非常符合同学们的特色,但只是扔硬币实在是太单调了.同学们觉得要加强趣味性,所以要找 ...

  5. Hadoop伪分布式模式安装

    一.Hadoop介绍 Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS.HDFS有高容错性的特点,并且设计用来部署在低廉的硬件上:而且 ...

  6. tomcat 设置连接数

    maxConnections.maxThreads.acceptCount的含义及关系maxThreads:tomcat同时处理请求的任务个数,默认值为200maxConnections :tomca ...

  7. vue与jquey

    vue与jquey jQuery是使用选择器($)选取DOM对象,对其进行赋值.取值.事件绑定等操作,其实和原生的HTML的区别只在于可以更方便的选取和操作DOM对象,而数据和界面是在一起的.比如需要 ...

  8. SpringMVC配置多视图-内容协商原理

    SpringMVC配置多视图-内容协商原理 2014年03月06日 16:46:59 日积月累_滴水石穿 阅读数:10964更多 个人分类: SpringMVC   Spring Framework ...

  9. 域名打开没有加上“http://”,导致报错{"code":-32603,"message":"Cannot navigate to invalid URL"}

    1.在robotframework中写用例 Open Browser  192.168.4.110:8880/jwzh  Chrome 2.没有写http:// 3.导致报错 4.正确写法应该是 Op ...

  10. ssm框架整合+Ajax异步验证

    SSM框架是目前企业比较常用的框架之一,它的灵活性.安全性相对于SSH有一定的优势.说到这,谈谈SSM和SSH的不同点,这也是企业常考初级程序员的面试题之一.说到这两套框架的不同,主要是持久层框架Hi ...