佳木斯集训Day2
D2好点了,最起码不像之前那么水
T1按照常规操作是个找规律,类似于括号匹配的题,但是又不是,推进栈里,然后看最长的左括号有多少个,然后直接cout就可以了
#include <bits/stdc++.h>
using namespace std;
int n,point,ans=-;
char a[];
stack <char>s;
int main()
{
cin>>n;
for(int i=;i<=n;i++)
{
cin>>a[i];
s.push(a[i]);
if(s.top()=='(')
point++;
else
s.pop(),point--;
ans=max(ans,point);
}
if(ans%==)
cout<<ans/+<<endl;
else
cout<<ans/<<endl;
}
哎,居然可以折叠代码,我才发现
T2本来以为是个搜索,结果正解就是个搜索,dfs+一个简单的找规律,咳咳,看完题解就会了
不知道为什么,这道题我爆0了
#include <bits/stdc++.h>
#define ll long long
using namespace std;
int t,head[],x,y,n,in[],ans[];
int point=;
ll sum;
struct Tree{
int v,nxt;
}g[];
void add(int u,int v)
{
g[++point].v=v;
g[point].nxt=head[u];
head[u]=point;
}
void dfs(int x,int nw)
{
ans[x]=;
for(int i=head[x];i;i=g[i].nxt)
{
if(g[i].v==nw)continue;
dfs(g[i].v,x);
ans[x]+=ans[g[i].v];
}
sum+=ans[x];
}
void solve(int x,int square,ll nw)
{
sum=max(sum,nw);
for(int i=head[x];i;i=g[i].nxt)
{
if(g[i].v==square)
continue;
solve(g[i].v,x,nw+n-2LL*ans[g[i].v]);
}
}
int main()
{
memset(head,,sizeof(head));
cin>>n;
for(int i=;i<=n-;i++)
{
cin>>x>>y;
add(x,y);
add(y,x);
in[x]++;
in[y]++;
}
dfs(,);
solve(,,sum);
cout<<sum<<endl;
return ;
}
T3 是个神奇的二分答案,加上了一个神奇的剪枝就能AC,然而蒟蒻的我并没有想到剪枝,所以我RE60
#include <bits/stdc++.h>
#define ll long long
using namespace std;
ll n,m,ans=;
ll c;
ll pos[];
ll start,finish,admit,dis,maxn;
bool Black(ll k)
{
ll v=k;
ll point=;
for(ll i=start;i<finish;i++)
{
if(k<(pos[i+]-pos[i])*c)
return ;
if(v<(pos[i+]-pos[i])*c)
{
v=k;
point++;
}
v=v-(pos[i+]-pos[i])*c;
if(point>admit||v<)
return ;
}
return ;
}
void divide(ll l,ll r)
{
if(l==r)
{ ans=max(ans,l);
//cout<<ans<<endl;
return ;
}
ll mid=(l+r)/;
if(Black(mid)==)
divide(l,mid);
else
divide(mid+,r);
}
int main()
{
cin>>n>>m;
for(ll i=;i<=n;i++)
cin>>pos[i];
for(ll i=;i<=m;i++)
{
cin>>start>>finish>>c>>admit;
if(ans&&Black(ans))
continue;
divide(,1e18);
}
cout<<ans<<endl;
return ;
}
佳木斯集训Day2的更多相关文章
- 佳木斯集训Day1
23333第一次写博客 其实在佳木斯集训之前我都已经两三个月没打代码了 在佳木斯的时候前几天真心手生,导致了前几次考试考的很差... D1的考试还是比较良心的,T1是一道大模拟,直接枚举最后几位是00 ...
- WC集训DAY2笔记 组合计数 part.1
目录 WC集训DAY2笔记 组合计数 part.1 基础知识 组合恒等式 错排数 卡特兰数 斯特林数 伯努利数 贝尔数 调和级数 后记 补完了几天前写的东西 WC集训DAY2笔记 组合计数 part. ...
- 2019暑期金华集训 Day2 线性代数
自闭集训 Day2 线性代数 高斯消元 做实数时,需要找绝对值最大的作为主元,以获取更高精度. 在欧几里得环(简单例子是模合数)意义下也是对的.比如模合数意义下可以使用辗转相除法消元. 欧几里得环:对 ...
- 暑假集训Day2 互不侵犯(状压dp)
这又是个状压dp (大型自闭现场) 题目大意: 在N*N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案.国王能攻击到它上下左右,以及左上左下右上右下八个方向上附近的各一个格子,共8个格子. ...
- 2022寒假集训day2
day1:学习seach和回溯,初步了解. day2:深度优化搜索 T1 洛谷P157:https://www.luogu.com.cn/problem/P1157 题目描述 排列与组合是常用的数学方 ...
- 考前停课集训 Day2 非
因为太长了 所以一天一天分开发 Day2 昨天晚上没开黑车 没脱衣服就睡了 可能是我难受了…… 新的一天. 早上好. 我没去晨跑,早上先和团长集合了,没看见rkbudlo来 于是就先吃饭了 去机房的时 ...
- 长沙雅礼中学集训-------------------day2
怎么说呢,今天的题特别的神奇,因为emmmmmm,T1看不懂(一直到现在还没有理解明白期望概率什么的),T2题面看不懂+扩展欧几里得求逆元怎么求我忘了,T3哇,终于看懂一题了,然而写了个50分的程序但 ...
- 集训Day2
雅礼集训2017Day2 T1 给你一个水箱,水箱里有n-1个挡板,水遵循物理定律 给你m个条件,表示第i个格子上面y+1高度的地方有或没有水 现在给你无限的水从任意地方往下倒,问最多满足多少条件 n ...
- HZNU-ACM寒假集训Day2小结 二分答案
Day2 ---二分 这里直接给出模板 两种对应不同的情况 可以借助数轴理解 int bsearch_1(int l, int r) { while (l < r) { ; if (check( ...
随机推荐
- asyncio系列之sleep()实现
先来看个例子,自己实现的模拟耗时操作 例1 import types import select import time import socket import functools class Fu ...
- Appium+python自动化(十六)- ADB命令,知否知否,应是必知必会(超详解)
简介 Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态. adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或 ...
- Codeforces Gym100543L:Outer space invaders(区间DP)
题目链接 题意 有n个人,每个人有一个出现时间a和一个开枪时间b和一个距离d,在任意一个时刻,你可以选择炸人,你要炸一个人的花费是和他的距离d,并且所有的已经出现并且还没开枪的和你距离<=d的人 ...
- SPOJ INTSUB - Interesting Subset(数学)
http://www.spoj.com/problems/INTSUB/en/ 题意:给定一个集合,该集合由1,2,3....2n组成,n是一个整数.问该集合中有趣子集的数目,答案mod1e9+7. ...
- 阿里云域名的ssl证书申请与腾讯服务器域名的证书安装
阿里云域名中的SSL证书申请,腾讯云服务器中的证书安装: 因为公司的与域名都在阿里云上面,服务器却用的是腾讯云的.记得前2年用阿里云管理平台的时候,域名的SSL证书都很好找,也许是长时间不用,找SSL ...
- 数字IC前后端设计中的时序收敛(二)--Setup违反的修复方法
本文转自:自己的微信公众号<数字集成电路设计及EDA教程> 里面主要讲解数字IC前端.后端.DFT.低功耗设计以及验证等相关知识,并且讲解了其中用到的各种EDA工具的教程. 考虑到微信公众 ...
- 关系型数据库MySql简介
什么是关系型数据库? 数据库就是用来存储数据的仓库,是一种特殊的文件. 根据存储的数据不同,划分为关系型数据库和非关系型数据库. 关系型数据库就是指 建立在关系模型基础上的数据库,通俗来讲这种数据库就 ...
- 实例解说AngularJS在自动化测试中的应用
一.什么是AngularJS ? 1.AngularJS是一组用来开发web页面的框架.模板以及数据绑定和丰富UI的组件: 2.AngularJS提供了一系列健壮的功能,以及将代码隔离成模块的方法: ...
- 微信小程序 键盘显示短信验证码
1.场景描述: IOS系统 一些APP或者微信小程序在收到短信验证码的时候会在键盘上自动保存验证码信息,当用户点击的时候,会自动赋值到当前所点击的输入框中 2.案例: 2.实现: TIPS:这个功能是 ...
- 分布式事务(4)---RocketMQ实现分布式事务项目
RocketMQ实现分布式事务 有关RocketMQ实现分布式事务前面写了一篇博客 1.RocketMQ实现分布式事务原理 下面就这个项目做个整体简单介绍,并在文字最下方附上项目Github地址. 一 ...