test20181016 B君的第一题】的更多相关文章

题意 分析 考场爆零做法 考虑位数少的一定更小,高位小的一定更少. 然后计算一定位数下不同数字的个数,然后从高到低依次确定数位. 特例:如果确定的高位的后缀出现了x,那么要把x调整到后缀去,这样一定更优. 然而这样做有问题,有重复的情况,譬如样例1的6666. #include<cstdlib> #include<cstdio> #include<cmath> #include<cstring> #include<iostream> #inclu…
题意 分析 考场做法 对p的幂打表发现,我们一定可以把x和y的二进制位从低到高依次调整成0. 具体而言,从0次幂开始每两个分为一组a,b,那么0,a,b,a+b组合中的一种可以将x,y的对应二进制位都调整成0. 然后模拟一下就行了. 时间复杂度\(O(\log |x| + \log |y|)\) #include<cstdlib> #include<cstdio> #include<cmath> #include<cstring> #include<i…
题意 分析 考场暴力50分. 考虑bfs序,一个点的儿子节点的bfs序一定连续,所以对bfs序建线段树,努力打一下就行了. 时间复杂度\(O(n \log n + m \log n)\) #include<cstdlib> #include<cstdio> #include<cmath> #include<cstring> #include<iostream> #include<string> #include<vector&g…
题意 分析 考场爆零做法 考虑dp,用\(f(i,j,0/1)\)表示i及其子树中形成j个边连通块的方案数,其中i是否向外连边. \(O(n^3)\),转移方程太复杂就打挂了. #include<cstdlib> #include<cstdio> #include<cmath> #include<cstring> #include<iostream> #include<string> #include<vector> #i…
题意 分析 二次剩余问题. x,y相当于二次方程 \[ x^2-bx+c=0 \mod{p} \] 的两根. 摸意义下的二次方程仍然考虑判别式\(\Delta=b^2-4c\). 它能开根的条件是\(\Delta=0\)或\(\Delta^{\frac{p-1}{2}}=1\) 若能开根,则根为\(\Delta^{\frac{p+1}{4}}\) 然后就是普通的解一元二次方程了. 代码 #include<cstdlib> #include<cstdio> #include<c…
题意 分析 考场做法同标解. 画图模拟分析发现,无论操作顺序怎样,操作数的奇偶性是不变的. 所以等同求出,以每点为根的操作数奇偶性. 用\(f(x)\)表示x及其子树中的边,包括x到它fa的边,将他们全部置0的操作数. \(f(x)\)与\(\sum_{y \in son(x)}f(y)\)的奇偶性有关,但是分4种情况讨论又可以发现,其实f(x)只跟x到fa这条边有关. 那么每点换成根之后,总操作数的奇偶性只跟根节点周围的边的奇偶性有关,于是可以\(O(n)\)做. 代码 #include<cs…
上一篇的blog地址为:http://www.cnblogs.com/life91/p/3313868.html 这几天又参加了一个家公司的笔试题,在最后的编程题中竟然出现了去哪儿网开发的第一题,也就是简化路径值.但是这次做题后,我发现我上次写的那个简化源码有很多问题,并且在这次笔试过程中也没有答对.闲话说完了,进入正题. 上次源码出现的BUG: 1. 将连续重复的多个’/’字符视为一个.例如,”/abac/def//////ef”->”/abac/def/ef”. 2. 根目录的开始字符为’/…
这道题是载入一幅带有有趣纹理的图像并用不同的模板(窗口,核)大小做高斯模糊(高斯平滑),然后比较用5*5大小的窗口平滑图像两次和用11*11大小的窗口平滑图像一次是否接近相同. 先说下我的做法,a部分我将每个不同的窗口大小模糊化后的图像生成后,还计算了每个模糊化后的图像与原始图像间的MSE值与PSNR值.(参见:http://zh.wikipedia.org/wiki/%E5%B3%B0%E5%80%BC%E4%BF%A1%E5%99%AA%E6%AF%94) b部分我计算了两次5*5窗口大小的…
#include <highgui.h> #include <cv.h> #pragma comment (lib,"opencv_calib3d231d.lib") #pragma comment (lib,"opencv_contrib231d.lib") #pragma comment (lib,"opencv_core231d.lib") #pragma comment (lib,"opencv_feat…
#include <highgui.h> #include <cv.h> #pragma comment (lib,"opencv_calib3d231d.lib") #pragma comment (lib,"opencv_contrib231d.lib") #pragma comment (lib,"opencv_core231d.lib") #pragma comment (lib,"opencv_feat…