摘要:
题目链接 题意:给定一个无向图,每次询问将[l,r]区间上的点全部联通需要用到至少前几条边 挺套路化的题,以边的顺序作为权值构造最小生成树的kruskal重构树,每个结点上记录边的权值,并存储一棵线段树记录该连通块下每个区间上有多少点,父结点由子结点合并而成(我用了可持久化合并,因为可以在线查询)。 阅读全文
摘要:
题目链接 显然每个$p_i$的决策都是独立的,因此实际上要解决的是这样一个问题:给定数轴上的一些带颜色的点,找一个最短的区间,使其包含所有颜色的点 1.首先把所有点的颜色和坐标扒出来。整数n被整除得到的所有可能的数只有$O(\sqrt{n})$个,这些数可以通过整除分块算法得到 2.根据动态规划的思 阅读全文
摘要:
题目链接 题意:构造一个长度为n(n<=1000)的序列,使得序列的元素之和在[l,r]之间且异或和为z 挺有意思的一道题 首先不考虑l的限制,只要求和小于等于r以及异或和等于z,按二进制位从高到低依次对n个数同时赋值,设dp[u][lim]表示赋值完前u个二进制位,且当前位最多能选lim+r[u] 阅读全文
摘要:
##A - Seventeen 显然$n=1,2,3$时无解,先手算出$n=4,5,6,7$时的解,然后根据$s[i]=s[i-4]+(i-3)+i-(i-2)-(i-1)$递推即可 code #include<bits/stdc++.h> using namespace std; typedef 阅读全文
摘要:
今天午睡的时候忽然想到这样一类问题:如何求一个序列(可正可负可零)的前k大(小)个子区间的和?随即想到了一个$O((n+k)(logn+logk))$的算法,思路并不难 看到区间和,首先想到的就是构造出前缀和,一般这么搞准没错~ 然后看到前k小问题,一般能想到的做法是构造出一个边权非负的有向图(显式 阅读全文
摘要:
基本模型: class Model: def __init__(self): self.pre=None def __call__(self,pre): u=self while u.pre!=None: u=u.pre u.pre=pre return self def forward(self, 阅读全文
摘要:
【学习笔记】用numpy实现一个简单的MLP 之前我用numpy实现了多项式逻辑回归,这次打算用同样的数据在MLP上试试 模型结构很简单,就是一个双层的MLP,输入是二维的向量,隐藏层是由三个神经元组成的全连接层(激活函数是tanh),最后通过logistic回归输出类别$\hat y$ 正向及反向 阅读全文
摘要:
多项式逻辑回归就是在逻辑回归的基础上将高次项作为特征加进去,以实现高维特征的提取 一、模型构建 多项式逻辑回归模型是由三个子模型组成: (1)添加多项式特征 (2)标准化 (3)逻辑回归 添加多项式特征 将各个特征之间相乘得到新的特征,比如原来的特征是$[x_0,x_1]$ 二次多项式特征是$[1, 阅读全文
摘要:
题目链接这是我三年前打组队赛的时候见到的题,当时一点头绪都没,最近学了机器学习之后突然想起还有这么一个坑没有填,于是就试了下第一次见到这种类型的题,题目很有创意,为出题人点赞(虽然不知道ML的题放在ACM里是否合适)题目的意思是,给出一系列人名的罗马音表示,让你判断是日本人还是韩国人题目给了训练数据 阅读全文
摘要:
对上帝来说,一切都是确定的,因此概率作为一门学问存在,正好证明了人类的无知。好在人类还是足够聪明的,我们并没有因为事物是随机的而束手无措,我们根据事物的可能性来决定我们的行为。比如,某个人抢银行之前,一定反反复复考虑过各种可能性。如果人们要等到一切都确定后再做,那么你可能什么都做不了,因为几乎一切都 阅读全文