星际旅行

0分

瞬间爆炸。

考试的时候觉得这个题怎么这么难,

打个dp,可以被儿子贡献,可以被父亲贡献,还有自环,叶子节点连边可以贡献,非叶子也可以贡献,自环可以跑一回,自环可以跑两回,

关键是同一子树会贡献,不同子树也会贡献。

这还不是欧拉图欧拉路问题,awsl

然后我就放弃了这个题

考完试看题解,tm一个大水题

虽然好像不算水,

思考两个点之间因为连接的是无向边,所以所有点入度出度都为2。

先不考虑自环

如果把两个点之间无向边拆成两个有向边,那么问题就变成去掉两个边使原图存在欧拉路。

于是乎,问题就变得很简单了

如果有自环

可以去掉两个自环,或者去掉一个自环和一个边

砍树

做砍树时问大佬说,“这是一个数论分块”模板题

我:???

原来只有我没学过数论分块吗?

https://www.cnblogs.com/0xfffe/p/9648943.html

略微理解了理解,写的非常清楚

你说这是向下取整,不是向上取整,砍树要向上取整,那篇博客不适用于砍树?

确实不适用

我们要分块的是等式右面的$\sum_{i}^{n} a[i]  +k$除以d

因为C是固定的,所以这是一个分段函数,我们要处理的是不同的右面的值最后再跟左面对应

我们然后f存下这一段具体的值,

r存下具体右端点

然后就完了

代码

#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define A 11000000
ll l=1,r,n,m,a[A],dl[A],R[A],f[A],zz=0,num=0,ans=0,sum=0;
void precl()
{
while(1){
if(!(sum/l)) break;
r=sum/(sum/l);
f[++num]=sum/r;
R[num]=r;
l=r+1;
}
} int main(){
scanf("%lld%lld",&n,&m);
sum=m;
for(ll i=1;i<=n;i++){
scanf("%lld",&a[i]);
sum+=a[i];
}
precl();
for(ll j=1;j<=num;j++)
{
ll t=0;
for(ll i=1;i<=n;i++){
t+=ceil((double)a[i]/(double)R[j]);
}
// printf("f=%lld R=%lld\n",f[j],R[j]);
if(t<=f[j]) ans=R[j];
}
cout<<ans<<endl;
}

以下是我完全错误的解释

设$k\times i-p=N$ 向上取整设

$\large{\lceil \frac N{i+d} \rceil}=k$

于是$k\times (i+d)-p2=N$

同样得出p2=p+kd

就是照猫画虎的一个过程

底下我不具体推了,

$\large \left \lceil \frac N{\left \lfloor \frac Ni \right \rfloor } \right \rceil$

所以对砍树这道题来说,这确实是个模板题,分析发现这是一个分段函数,维护每一段大小相同,维护l,r下一个l=r+1

具体来说

$\large \left \lceil \frac {a[i]}{d} \right \rceil$不是为我们具体分块的值

$\large \lfloor \frac Ni \rfloor$才是

然后等式右面是$\sum_{i}^{n} a[i]  +k$再除以d

这个N就是$\sum_{i}^{n} a[i]  +k$

那么这个题就迎刃而解了。

超级树

等我AC了可怜与超市

NOIP模拟测试5「星际旅行·砍树·超级树」的更多相关文章

  1. NOIP模拟测试17「入阵曲&#183;将军令&#183;星空」

    入阵曲 题解 应用了一种美妙移项思想, 我们先考虑在一维上的做法 维护前缀和$(sum[r]-sum[l-1])\%k==0$可以转化为 $sum[r]\% k==sum[l-1]\%k$开个桶维护一 ...

  2. NOIP模拟测试14「旋转子段·走格子·柱状图」

    旋转子段 连60分都没想,考试一直肝t3,t2,没想到t1最简单 我一直以为t1很难,看了题解发现也就那样 题解 性质1 一个包含a[i]旋转区间值域范围最多为min(a[i],i)----max(a ...

  3. NOIP模拟测试11「string&#183;matrix&#183;big」

    打的big出了点小问题,maxx初值我设的0然后少了10分 第二题暴力打炸 第一题剪了一些没用的枝依然40分 总分70 这是一次失败的考试 string 想到和序列那个题很像,但我没做序列,考场回忆学 ...

  4. NOIP模拟测试19「count·dinner·chess」

    反思: 我考得最炸的一次 怎么说呢?简单的两个题0分,稍难(我还不敢说难,肯定又有人喷我)42分 前10分钟看T1,不会,觉得不可做,完全不可做,把它跳了 最后10分钟看T1,发现一个有点用的性质,仍 ...

  5. 20190803 NOIP模拟测试12「斐波那契(fibonacci)· 数颜色 · 分组 」

    164分 rank11/64 这次考的不算太差,但是并没有多大的可能性反超(只比一小部分人高十几分而已),时间分配还是不均,T2两个半小时,T1半个小时,T3-额十几分钟吧 然额付出总是与回报成反比的 ...

  6. NOIP模拟测试10「大佬·辣鸡·模板」

    大佬 显然假期望 我奇思妙想出了一个式子$f[i]=f[i-1]+\sum\limits_{j=1}^{j<=m} C_{k \times j}^{k}\times w[j]$ 然后一想不对得容 ...

  7. NOIP模拟测试38「金·斯诺·赤」

    金 辗转相减见祖宗 高精 #include<bits/stdc++.h> using namespace std; #define A 2000 #define P 1 #define N ...

  8. NOIP模拟测试28「阴阳·虎·山洞」

    写这几个题解我觉得我就像在按照官方题解抄一样 阴阳 题解 将题目中给的阴阳看作黑色和白色 首先我们观察到最后生成图中某种颜色必须是竖着单调递增或竖着单调递减 类似这样 否则不满足这个条件 但合法染色方 ...

  9. NOIP模拟测试30「return·one·magic」

    magic 题解 首先原式指数肯定会爆$long$ $long$ 首先根据欧拉定理我们可以将原式换成$N^{\sum\limits_{i=1}^{i<=N} [gcd(i,N)==1] C_{G ...

随机推荐

  1. 将本地代码上传到云效git存放

    前提已开通云效账号,然后进行云效首页的研发---代码 创建git组 创建git库 生成https://code.aliyun.com/test-demo1/v1的git库 准备将本地的test-dem ...

  2. 数据库调优(二)Inner Join Merge Join Hash Match

    T-SQL 的编码习惯以及规范,影响的是查询优化器对执行计划的选择 健壮的SQL语句,更稳定.更高效 SELECT 几个部分: - 查询的数据来自什么表 - 需要查询表中哪些字段 (尽量不使用类似于 ...

  3. Unity动态构建mesh绘制多边形算法流程分析和实践

    前言 先说一下,写这篇博文的动机,原文的博主代码写的十分潇洒,以至于代码说明和注释都没有,最近恰逢看到,所以以此博文来分析其中的算法和流程 参考博文:https://blog.csdn.net/lin ...

  4. [并发编程 - 多线程:信号量、死锁与递归锁、时间Event、定时器Timer、线程队列、GIL锁]

    [并发编程 - 多线程:信号量.死锁与递归锁.时间Event.定时器Timer.线程队列.GIL锁] 信号量 信号量Semaphore:管理一个内置的计数器 每当调用acquire()时内置计数器-1 ...

  5. mysql知识点归纳-执行计划篇

    愿历尽千帆,归来仍是少年 缘由: 优化sql,顾此记录一下,以便温习之用. 前置: sql执行过程:客户端 -> 连接器 -> 分析器 (或查询缓存 - > end) -> 优 ...

  6. istio部署问题Q&A

    端口绑定无权限 创建Gateway,提示绑定端口无权限. 2020-12-27T12:25:30.974288Z warning envoy config gRPC config for type.g ...

  7. 【转载】基于Linux命令行KVM虚拟机的安装配置与基本使用

    基于Linux命令行KVM虚拟机的安装配置与基本使用 https://alex0227.github.io/2018/06/06/%E5%9F%BA%E4%BA%8ELinux%E5%91%BD%E4 ...

  8. Docker —— 使用 Dockerfile 制作 Jdk + Tomcat 镜像

    一.准备好Jdk和Tomcat apache-tomcat-8.5.50.tar.gz jdk-8u212-linux-x64.tar.gz 注意: Jdk 和 Tomcat 记得从官网下载,否则制作 ...

  9. 查询登录信息 w, who*, id, tty, last, finger

    查询登录信息 w, who*, id, tty, last, finger Wavky2016.12.14 16:19:37字数 813阅读 85w [options] [user...]显示所有已登 ...

  10. Python 库整理【收藏】

    库名称简介 Chardet字符编码探测器,可以自动检测文本.网页.xml的编码. colorama主要用来给文本添加各种颜色,并且非常简单易用. Prettytable主要用于在终端或浏览器端构建格式 ...