上一页 1 ··· 60 61 62 63 64 65 66 67 68 ··· 70 下一页
摘要: 题目大意:给你一个由0-9组成的字符串,有m个询问,两种操作,第一种将l到r的字符全部变成c,第二种问l到r这段 字符串的循环节是不是d。 思路:首先我们要知道怎么判断字符串的循环节的长度是不是d,如果这个字符串小于等于d,那么肯定是的,否则,如果l 到 r-d 和l+d 到 r 这两段字符串则循环 阅读全文
posted @ 2018-02-18 23:16 NotNight 阅读(142) 评论(0) 推荐(0) 编辑
摘要: D - Inna and Sequence 线段数维护区间有几个没有被删除的数,利用线段树的二分找第几个数在哪里,然后模拟更新就好啦。 阅读全文
posted @ 2018-02-06 16:46 NotNight 阅读(133) 评论(0) 推荐(0) 编辑
摘要: #include #define read(x) scanf("%d",&x) using namespace std; const int N=1e6+7; struct BIT { int a[N]; void modify(int pos,int v) { for(int i=pos;i0;i-=i&-i) ans+=a[i]... 阅读全文
posted @ 2018-02-05 14:08 NotNight 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 题目大意:有m (m<=1e9) 个相同的块,每个块里边有n个数,每个数的范围是1-9,从每个块里边取出来一个数组成一个数,让你求组成的方案中 被x取模后,值为k的方案数。(1<=k<x<=100) 思路:刚开始把m看成了1e5,写了一发数位dp,果断RE,然后我在考虑从当块前状态转移到下一个块状态 阅读全文
posted @ 2018-02-04 17:51 NotNight 阅读(114) 评论(0) 推荐(0) 编辑
摘要: C - Wet Shark and Flowers 题目大意:有n个人围成一个圈,每个在l[ i ] 到 r[ i ]之间随机出一个数,如果这个数和旁边的一个人出的数的积是p的倍数,则他得到1000元,如果 和两个人的积都是p (p一定为素数)的倍数,则他得到2000元,让你求所有人得到的钱的期望。 阅读全文
posted @ 2018-02-04 17:44 NotNight 阅读(125) 评论(0) 推荐(0) 编辑
摘要: A - Cake 题目大意:给你一个n个顶点(n<=100)的多边形和每两个点连边的消耗,让你求把这个多边形全部切成三角形所需要的最小消耗,如果这个多边形为凹多边形则输出无解。 思路:先求一个凸包,看凸包里的点是不是n个,不是n个输出无解,求完凸包之后,点都是按顺时针排的,我们用dp[ i ][ j 阅读全文
posted @ 2018-01-31 15:01 NotNight 阅读(226) 评论(0) 推荐(0) 编辑
摘要: 题目大意:让你求l到r 之间数位的最长上升子序列的个数为k 的数的数量。 思路:用状态压缩模拟求最长上升子序列的过程,因为最多不超过10个所以可以压缩, 用dp[ i ][ j ][ k ]表示数位为i,最长上升子序列的状态为j, 最后最长上升序列为k的方案数。 阅读全文
posted @ 2018-01-31 14:16 NotNight 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 题目大意:给你一个n (n<=300) 边形,给出它所有的顶点坐标,让你把它划分成n-2个三角形的花费最小值,顶点 a 和 b 相连的花费为 abs(a.x+b.x)*abs(a.y+b.y)。 如果是凹多边形输出无解。 思路:先跑个凸包判断是不是凸多边形,跑完之后点的顺序是逆时针的,我们考虑区间d 阅读全文
posted @ 2018-01-25 15:02 NotNight 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 1 #include 2 using namespace std; 3 const int N=2005; 4 int n,tot; 5 struct point 6 { 7 int x,y; 8 point(int _x=0,int _y=0){x=_x; y=_y;} 9 point operator -(const point &rhs)const... 阅读全文
posted @ 2018-01-25 13:41 NotNight 阅读(153) 评论(0) 推荐(0) 编辑
摘要: A - Elections 1 #include<bits/stdc++.h> 2 using namespace std; 3 int n,m,num[105],a[105][105]; 4 int main() 5 { 6 scanf("%d%d",&n,&m); 7 for(int i=1;i 阅读全文
posted @ 2018-01-07 16:59 NotNight 阅读(145) 评论(0) 推荐(0) 编辑
上一页 1 ··· 60 61 62 63 64 65 66 67 68 ··· 70 下一页