Live2d Test Env

06 2019 档案

摘要:#include <gl/glut.h> //正方形的位置和大小 GLfloat x1 = 100.0f; GLfloat y1 = 150.0f; GLsizei rsize = 50; //正方形运动变化的步长 GLfloat xstep = 1.0f; GLfloat ystep = 1.0f 阅读全文
posted @ 2019-06-28 11:09 nimphy 阅读(222) 评论(0) 推荐(0) 编辑
摘要:pro:有一个长度为N的数组a[i],要求选择k[i]>0,使得b[i]=a[i]^k[i]%M中出现的不同数最多。N<=200, M<=1e9; sol:a^x%p的个数的有限的,但是全部求出来再二分匹配显然是不可取的。 但是考虑到二分匹配的特殊性,对于每个a[],最多求min(N,全部)个即可满 阅读全文
posted @ 2019-06-11 10:07 nimphy 阅读(183) 评论(0) 推荐(0) 编辑
摘要:pro:给定N个数的数组a[],其中一个数X的出现次数大于N/2,求X,空间很小。 sol:不能用保存数组,考虑其他做法。 由于出现次数较多,我们维护一个栈,栈中的数字相同,所以我们记录栈的元素和个数即可,如果新加入一个数与栈中数不同,则弹出一个元素(tot--),否则加入,最后保留在栈中的就是答案 阅读全文
posted @ 2019-06-10 17:13 nimphy 阅读(215) 评论(0) 推荐(0) 编辑
摘要:题意:给定N个点,Q次询问,问当前点知否在N个点组成的凸包内。 思路:由于是凸包,我们可以利用二分求解。 二分思路1:求得上凸包和下凸包,那么两次二分,如果点在对应上凸包的下面,对应下凸包的上面,那么在凸包内。 二分思路2:求得凸包(N),划分为N-2个三角形,二分求得对应位置,验证是否在三角形内。 阅读全文
posted @ 2019-06-10 16:47 nimphy 阅读(435) 评论(0) 推荐(0) 编辑
摘要:pro:N个数排成一圈。一次操作为,每个位置的数+=L*左+R*右,保留x为整数。 问S轮操作后每个位置的值。 N<=1000,S<=2^30,x<=9 。 sol:不难想到矩阵乘法,但是N为1000,显然普通的N^3矩阵乘法的复杂度不能AC。 不难发现这是经典的循环矩阵(第二行为第一行右移一格.. 阅读全文
posted @ 2019-06-10 11:03 nimphy 阅读(457) 评论(0) 推荐(0) 编辑
摘要:pro:给定一个N边形,然后给半径为R的圆,问是否可以放进去。 问题转化为多边形的最大内接圆半径。(N<50); sol:乍一看,不就是二分+半平面交验证是否有核的板子题吗。 然而事情并没有那么简单。 因为我们的多边形可能是凹多边形,而前面的方法只对凸多边形有效。 学习了下模拟退火的算法,这个随机算 阅读全文
posted @ 2019-06-08 17:30 nimphy 阅读(344) 评论(0) 推荐(0) 编辑
摘要:pro:给定平面上N条直线,保证没有直线和Y轴平行。 求有多少交点的X坐标落在(L,R)开区间之间,注意在x=L或者R处的不算。 sol:求出每条直线与L和R的交点,如果A直线和B直线在(L,R)相交,一定有Xa<Xb而且Ya>Yb(或相反);那么即是求逆序对。 阅读全文
posted @ 2019-06-08 10:11 nimphy 阅读(168) 评论(0) 推荐(1) 编辑
摘要:pro: 给出一个n*m的地图,刚开始人在(x,y),每次给出一段区间(l,r,t),表示在时间[l,r]内,可以使人向4个方向(t)移动一格,或者不动。求最大可以移动多少格。 sol: 考虑每一列(上下移)或者一行(左右移)的情况。以右移为例,我们可以很快列出dp方程:f[x][y][i]=max 阅读全文
posted @ 2019-06-07 16:16 nimphy 阅读(195) 评论(0) 推荐(0) 编辑
摘要:pro:有D个字母,每个字母有自己的权值,现状需要用它们拼出N个单词,使得这些单词互相不为另外一个的前缀。 且单词的权值和最小。D<=200; N<=200; sol:如果建立字典树,那个每个单词的权值权值救赎根到叶子的路径权重和。 感觉有点想哈夫曼树,但是没什么大的关系,因为不能倒推。 由于ND比 阅读全文
posted @ 2019-06-07 10:59 nimphy 阅读(227) 评论(0) 推荐(0) 编辑
摘要:pro:开始有一个字母虫,然后字母虫在每一天可以选择自己身上的部分字母变换,变换规则形如A->BC。 现状给定最终字母虫的字符串,求最少用了多少天。 如有规则A->BC,B->AC,C->AB;则ACAB可以见过三天(A-BC-ACC-ACAC)或者两天(A-BC-ACAB)得来。 规则不超过80, 阅读全文
posted @ 2019-06-07 09:31 nimphy 阅读(347) 评论(0) 推荐(0) 编辑
摘要:pro: T次询问,每次给出N(N<1e8),求所有Σi^4 (i<=N,且gcd(i,N)==1) ; sol: 因为N比较小,我们可以求出素因子,然后容斥。 主要问题就是求1到P的4次幂和。 我们知道K次幂和是一个K+1次多项式。 这里有公式Pre=P*(P+1)*(2P+1)*(3P^2+3P 阅读全文
posted @ 2019-06-05 18:28 nimphy 阅读(216) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示