首页 > TAG信息列表 > nw

平衡树 学习笔记

\(\mathtt{Treap}\) 相较于普通的二叉搜索树,平衡树更优的点在于在二叉搜索树的基础上又给每个节点随机赋了一个优先级,并按照优先级维护一个小(或大)根堆,这样能大大减少查询时的复杂度。 \(\mathtt{Treap = Tree + Heap}\) \(\mathtt{Treap}\) 的主要特点就是通过旋转的操作去维护平

20220711模拟赛

F: 题意:给定n个不大于c的正整数a1~an和m组询问,每次问 [l,r] 中有多少个数出现正偶数次。 注:强制在线 一道分块题,思路类似区间分块9(众数)那道题,连续块的答案可以用暴力来维护,每次询问时散点枚举,其对答案的贡献显然。 点击查看代码 #include<bits/stdc++.h> #define get(i) (((i-1)/

ZJOI2015 诸神眷顾的幻想乡

给定一棵叶子节点不超过 \(20\) 个的无根树,每个节点上都有一个 \(0\sim 9\) 的数字,求树上本质不同路径条数。两条路径相同是指其路径上所以节点上的数字顺次连结组成的字符串相同。 \(1\le n\le 10^5\)。 如果此题是从根出发的路径,那相当于就是给定了一棵 \(\text{Trie}\) 树,非

webrtc傅里叶变换实现

1.实傅里叶变换 说明 [definition] <case1> RDFT R[k] = sum_j=0^n-1 a[j]*cos(2*pi*j*k/n), 0<=k<=n/2 I[k] = sum_j=0^n-1 a[j]*sin(2*pi*j*k/n), 0<k<n/2 <case2> IRDFT (excluding scale) a[k]

JOI2017 JOIOI王国

JOIOI王国 JOI2017 题解 因为题目是最大值最小,所以考虑二分答案,观察题目中的划分方案可以发现,最后的划分的那条边界线一定是最后分成了个梯形的形状,即分界点单调不降或不升。因为是要二分,所以我们假设王国格子的最小值在左边,最大值在右边,分界线划出来的左边是个下梯形,即上底大于等

【P1242 新汉诺塔】(2022.05.21)tg

【P1242 新汉诺塔】 思路:91分,没有全对。。。 要按照从大到小的顺序使圆盘归位,那么,我们每次使大盘子归位的时候,显然,其上面的小盘子需要让它们移开。显然,这里就和汉诺塔一致了,但我们需要一个中转,如何确定中转,就是除了from和to之外的内根柱子,即6-from-to,那么这个问题就好解决了。 #in

使用nwjs开发桌面应用之Hello,World!

使用nwjs开发桌面应用之Hello,World!     今天发现原来JavaScript也可以用来开发桌面应用程序,顿时有一种很牛逼的感觉,于是马上就开始了Hello,World!,感受一下JavaScript的强大。   可以用来开发桌面应用的js框架有三种:   1.NW.js   NW.js是Intel的工程师写的一个基于nod

[省选集训2022] 模拟赛3

A 题目描述 有长度为 \(n\) 的数组 \(\{a\}\),若 \(a_i>0\) 则表示 \(p_i\leq a_i\),若 \(a_i<0\) 则表示 \(p_i\geq a_i\) 请问满足上面 \(n\) 个条件的排列个数,答案对 \(10^9+7\) 取模。 \(n\leq 5000\) 解法 首先考虑 \(a_i>0\) 时有两种类似的计数方法,第一种是扫描 \(a_i\),决策

用flask静态服务器运行angular

之所以用这种方案,主要是比nodejs express静态服务器还简单,而且打包成exe更方便,node+pkg打包成1个exe文件,不利于更新angular工程,而flask+cx_freeze打包,文件夹结构还在,直接更新angular工程代码就好。 一、支持angular的flask静态服务器 参考 https://stackoverflow.com/questions/5

多校联训1

多校省选模拟1 A 题意 定义一个长度为 \(n\) 的序列是好的,当且仅当有一个子段是 \(k\) 的排列。问所有长度为 \(n\),值域为 \(k\) 的彩色序列中,序列中一个长度为 \(m\) 的序列 \(A\) 一共出现了多少次。对于 \(1e9+7\) 取模。 \(1\le n \le 25000,1\le k\le 400\)。 题解 我们考虑

题解 AT2582 [ARC075D] Mirrored

题意:给定 \(D\),求满足 \(\mathrm{rev}(N)=N+D\) 的 \(N\) 的个数,\(\mathrm{rev}(N)\) 表示十进制下将 \(N\) 按位翻转并去掉前导 \(0\) 后的数。 为了更清楚地表示,我们设 \(|N|\) 为 \(N\) 的位数。 由于是将 \(N\) 翻转,我们直接将翻转前后的位置匹配算贡献。可以直接枚举 \(|N|

题解 CF1361B Johnny and Grandmaster

目前(洛谷)最优解写法。 首先将 \(k_i\) 降序排列,并将相同的 \(k_i\) 合并。由于每个式子都是形如 \(p^{k_i}\) 的形式,即底数相同,可以考虑变成 \(p\) 进制,发现对于任意 \(c_1,\, \ldots ,\, c_{i+1}\) 和 \(a_0 < a_1 < a_2 \ldots < a_{i+1}\),满足 \(c_{i+1} \times p^{a_{i+1}} \g

CF1620F 题解

CF1620F 题解 题意: 给定排列 \(p\),要求拟定一个新序列 \(p'\),满足: \(\forall i \in [1,n],p'_i=\pm p_i\); 构造无向图 \(G\),其中 \((i,j)\) 有边当且仅当 \(i<j,p'_i>p'_j\),要求 \(G\) 是二分图。 请给出方案或报告没有方案。 做法: 首先注意到,一张图不是二分图,当且仅当其存在至

NW.js使用及打包(以及坑的解决方案)

简介 NW.js (原名 node-webkit)是一个结合了 Chromium 和 node.js 的应用运行时,通过它可以用 HTML 和 JavaScript 编写原生应用程序。它还允许开发者从 DOM 调用 Node.js 的模块 ,实现了一个用所有 Web 技术来写原生应用程序的新的开发模式,而且,开发者可以很容易的将一个web应用打包

多个卷积层间合并的分析

1 经过卷积层前后的变化 假设输入数据为 channel1 × nh × nw 经过一个 kh × kw 的卷积核,步长为 s,padding为 p,则输出的空间维度为 ⌊( nh​ − kh​ + p​​ ) / s + 1⌋ × ⌊( nw​ − kw​ + p​ ) / s + 1​⌋,易知,输出空间存在 ⌊( nh​ − kh​ 

Luogu_P2048

超级钢琴 有 \(n\) 个音符,编号从 \(1\) 到 \(n\) 。第 \(i\) 个音符的美妙度为 \(A_i\) 。 我们要找到 \(k\) 段不同超级和弦组成的乐曲,每段乐曲的连续音符个数 \(x\) 满足 \(L \le x \le R\) , 求乐曲美妙度的最大值。 注:当且仅当这两个超级和弦所包含的音符集合是相同的。 Soluti

CF1481F AB Tree 题解

Link. Codeforces Luogu Description. 给定 \(n\) 个点的树,\(1\) 是根,染出 \(k\) 个白点 \(n-k\) 个黑点。 求出最少的本质不同的从根走到某个节点连成的字符串数,并构造。 Solution. 首先考虑没有 \(k\) 的限制,肯定每层染相同。 那么最小值肯定是 \(\max\{\text{dep}_i\}\)。 考

好耶

题单 我单推这些题( P2824 [HEOI2016/TJOI2016]排序 两种做法应该都是很好的方法。 二分 时间复杂度 \(O(n\log^2 n)\)。 二分答案后赋权值为 \(0/1\),有很优美的性质。 二分答案 \(mid\),我们把原排列中大于等于 \(mid\) 的数都标记为 \(1\),小于 \(mid\) 的都标记为 \(0\)。然后对

Noip模拟40 2021.8.16

T1 送花 按照题解意思说是扫描线题,但我觉得像一个线段树优化$dp$ 主要思想一样,就是暴力枚举右端点,同时维护左端点的最值, 考虑两种情况, 如果左端点在$r$扫到的数$i$上一次出现的位置之前, 那么这个数是无法在区间$[l,r]$中作出贡献的 如果左端点在上次出现的位置之后,则可以作出贡献,

[数据结构] Splay

[数据结构] Splay 与 Treap 相比,并没有堆性质的限制,而是通过其灵活变换维持复杂度。 是均摊 \(\text O(logn)\) 的数据结构。 本来 Zhang_RQ 早就讲了,今天才学会 概念类 需要维护的 基本 东西有: 左右儿子,父亲,权值,一般会维护 \(sz\) 和 \(cnt\),便于进行二分操作。 基本操作 P3

NOIP 模拟 $29\; \rm 完全背包问题$

题解 \(by\;zj\varphi\) 一道 \(\rm dp\) 题。 现将所有种类从小到大排序,然后判断,若最小的已经大于了 \(\rm l\),那么直接就是一个裸的完全背包,因为选的总数量有限制。 设 \(\rm f_{i,j,k}\) 为选了前 \(\rm i\) 种物品,总数为 \(\rm j\),容量为 \(\rm k\),是否可行,转移很简单。 对于

ARC088简要题解

我直接一个痛苦面具 E题做了一整年 F感觉就是NOIP2018D1T3把我送退役那玩意,没时间写了,坑着吧。 C题: 从L开始,每次乘2 #include<bits/stdc++.h> using namespace std; long long X, Y; int n; int main() { cin>>X>>Y; int cnt = 1; long long nval = X; while(nval <= Y

webrtc fft4g

pjproject-2.10/third_party/webrtc/src/webrtc/common_audio   fft4g.c /* * http://www.kurims.kyoto-u.ac.jp/~ooura/fft.html * Copyright Takuya OOURA, 1996-2001 * * You may use, copy, modify and distribute this code for any purpose (include * commercial

Live2D项目,桌面可爱玩偶(可以动的),html桌面化(exe)的实现

Live2D项目,桌面可爱玩偶(可以动的),html桌面化(exe)的实现 原本为html的网页嵌入代码,我运用了nw.js进行了桌面化的实现 下载地址: https://wws.lanzous.com/iWr0Wnny5bg 密码:i2on 下图为html源码图 下面为html源码 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title

【洛谷4738】[CERC2017] Cumulative Code(Meet in Middle)

点此看题面 一棵\(n\)层的满二叉树,从上往下、从左往右编号,设\(p\)为它的\(prufer\)序列。 \(q\)次询问,每次给出\(a,d,m\),求\(\sum_{i=1}^mp_{a+(i-1)\times d}\)。 \(n\le30,q\le300\) 暴力搜索 如果当前点有父节点,那么我们会先把左子树删完,再把右子树删完,最后删去当前点。 如果