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的更多相关文章

  1. 佳木斯集训Day1

    23333第一次写博客 其实在佳木斯集训之前我都已经两三个月没打代码了 在佳木斯的时候前几天真心手生,导致了前几次考试考的很差... D1的考试还是比较良心的,T1是一道大模拟,直接枚举最后几位是00 ...

  2. WC集训DAY2笔记 组合计数 part.1

    目录 WC集训DAY2笔记 组合计数 part.1 基础知识 组合恒等式 错排数 卡特兰数 斯特林数 伯努利数 贝尔数 调和级数 后记 补完了几天前写的东西 WC集训DAY2笔记 组合计数 part. ...

  3. 2019暑期金华集训 Day2 线性代数

    自闭集训 Day2 线性代数 高斯消元 做实数时,需要找绝对值最大的作为主元,以获取更高精度. 在欧几里得环(简单例子是模合数)意义下也是对的.比如模合数意义下可以使用辗转相除法消元. 欧几里得环:对 ...

  4. 暑假集训Day2 互不侵犯(状压dp)

    这又是个状压dp (大型自闭现场) 题目大意: 在N*N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案.国王能攻击到它上下左右,以及左上左下右上右下八个方向上附近的各一个格子,共8个格子. ...

  5. 2022寒假集训day2

    day1:学习seach和回溯,初步了解. day2:深度优化搜索 T1 洛谷P157:https://www.luogu.com.cn/problem/P1157 题目描述 排列与组合是常用的数学方 ...

  6. 考前停课集训 Day2 非

    因为太长了 所以一天一天分开发 Day2 昨天晚上没开黑车 没脱衣服就睡了 可能是我难受了…… 新的一天. 早上好. 我没去晨跑,早上先和团长集合了,没看见rkbudlo来 于是就先吃饭了 去机房的时 ...

  7. 长沙雅礼中学集训-------------------day2

    怎么说呢,今天的题特别的神奇,因为emmmmmm,T1看不懂(一直到现在还没有理解明白期望概率什么的),T2题面看不懂+扩展欧几里得求逆元怎么求我忘了,T3哇,终于看懂一题了,然而写了个50分的程序但 ...

  8. 集训Day2

    雅礼集训2017Day2 T1 给你一个水箱,水箱里有n-1个挡板,水遵循物理定律 给你m个条件,表示第i个格子上面y+1高度的地方有或没有水 现在给你无限的水从任意地方往下倒,问最多满足多少条件 n ...

  9. HZNU-ACM寒假集训Day2小结 二分答案

    Day2 ---二分 这里直接给出模板 两种对应不同的情况 可以借助数轴理解 int bsearch_1(int l, int r) { while (l < r) { ; if (check( ...

随机推荐

  1. 我把代码开源、托管到了GitHub、码云

    前言 学习了那么多知识点,写了那么多代码,一直都没有时间整理,之前都是新学一个知识点就在同一个工程项目中进行实践测试,导致这个工程越来越臃肿.越来越乱,连我自己都快看不懂了... 这段时间整理了部分代 ...

  2. .NET Core学习笔记(1)——在Linux下运行Console APP

    都说.NET Core可以跨平台,说实话Linux咱也不太懂,咱也不敢问.怎样把一个简单的Console App在Linux下跑起来,真是费了我一番功夫.特做此篇以供指北. .NET Core的大饼我 ...

  3. @ApiImplicitParam注解

    @Api:用在请求的类上,表示对类的说明 tags="说明该类的作用,可以在UI界面上看到的注解" value="该参数没什么意义,在UI界面上也看到,所以不需要配置&q ...

  4. 常见Code Review过程中发现的问题-续

    上一篇列举了一些比较常见的Code Review问题列表,文末有链接,可追溯查看.本篇为上篇的姊妹篇,继续列举一些上篇遗漏的或不易发现的问题清单,希望能整体性把一些常见的问题表述出来. 测试数据不具有 ...

  5. [ZJOI2006]物流运输 题解

    [ZJOI2006]物流运输 时间限制: 10 Sec  内存限制: 162 MB 题目描述 物流公司要把一批货物从码头A运到码头B.由于货物量比较大,需要n天才能运完.货物运输过程中一般要转停好几个 ...

  6. java学习笔记(基础篇)—抽象与接口的区别

    抽象与接口的区别 一.抽象(abstract) 1. 抽象方法 1) 作用:定义规范 2) 抽象方法用来描述具有什么功能,但不提供实现. 3) 如果类中一个方法没有实现就要定义一个抽象方法. 2. 抽 ...

  7. bash 遍历目录

    bash遍历目录脚本traverse.sh: #!/bin/bash datadir=$ declare -a dirlist dirlist=`>/dev/null` for i in ${d ...

  8. py+selenium 自动判断页面是否报错并显示在自动化测试报告【原创】

    有需求就会去研究解决的路子. 现在需求就是,测试报告报错信息一堆,但却无法肉眼看出是什么问题,你只能知道定位不到元素或是超时,但你却不知道其实进入页面就报错了或是提交表单就报错了!也就是看到报错,需要 ...

  9. Python -----函数(基础部分)

    函数: 1.定义: 函数是对功能的封装 2.语法: def 函数名 函数体 函数名 函数名的命名规则和变量一样 3.函数的返回值: return,函数执行完毕,不会执行后面的 1.如果函数中不写ret ...

  10. .NET 欢乐编程术之类型超级转换之术👍👍

    准备工作:先确保 VS 版本大于 2017,且支持C# 7.0 语言版本.然后新建 .Net Core 项目,在 Nuget 包管理上引入微软霸霸官方包 System.Runtime.Compiler ...