算法
写java的小孩
这个作者很懒,什么都没留下…
展开
-
Monocarp and the Set(大于小于问号)
倒着看字符串s,假设此时已经插入了x个数字(包括当前即将被插入的数字),并且当前位置是。,那么当前数字可以有x-2种选法(不可以选最大和最小)。有一个空集合,最开始往里面加入一个数字。,那么,当前被插入的数字选法唯一,如果是。表示加入的数字比当前集合所有的数字小,给一个数字n,表示一个排列长度为n。表示加入的数字比当前集合所有数字大,求每次更改完,插入数字的方案数目。然后按照字符串s往里加数字,给一个数字m,表示m此操作。给一个字符串s,只包含。表示不是最大也不是最小。原创 2023-10-10 20:51:01 · 47 阅读 · 0 评论 -
背包方案数目(带增减)
给n次操作和一个数字k,每一次要么向集合中添加一个数字,要么删除一个数字。求每次操作后,凑出k的方案数目。原创 2023-10-10 20:32:27 · 31 阅读 · 1 评论 -
贪心构造--max(p[i],q[i])=a[i]
2.由于a[i]是升序排列,假设此时a[i]放到了p数组,p[i]和q[i]的待填写数列只会消除<=a[i]的值,不会消除>a[i]的值,所以,一旦出现了p不可以填写并且q不能填写,即使前面某些可以填写a[i]的位置给了q,照样无解。给一个n,和一个序列a[i],其中a[i]=max(p[i],q[i]),构造出p[i],q[i]。:当p数组和q数组都可以填写a[i]时,如果p数组填写a[i]后无解,那此时无解。考虑贪心,将a[i]升序排列,然后从a[1]填写到a[n]。原创 2023-07-02 21:57:57 · 44 阅读 · 1 评论 -
洛谷P1792——种树
A城市有一个巨大的圆形广场,为了绿化环境和净化空气,市政府决定沿圆形广场外圈种一圈树。棵树苗并要求全部种上,请你帮忙设计种树方案使得美观度总和最大。输出一个整数,表示最佳植树方案可以得到的美观度。城市土壤肥力欠佳,两棵树决不能种在相邻的位置(园林部门得到指令后,初步规划出。棵树苗全部种上,给出无解信息。并且每个位置都有一个美观度。,如果在这里种树就可以得到这。个种树的位置,顺时针编号。最终市政府给园林部门提供了。输入的第一行包含两个正整数。贪心+反悔机制+双向链表。原创 2023-07-04 21:18:59 · 92 阅读 · 0 评论 -
Restructuring Company(区间合并并查集)
例如1,3,4,5在一个集合中,那a[1]=1,如果1,2,3,4在一个集合中,那a[1]=4。操作2:维护一个a[i],表示元素i所在集合的右边界。对于一个序列1,2,3…2.合并x,x+1,x+2…3.查询x和y是否在一个集合。操作1:直接合并即可。原创 2023-07-05 19:03:38 · 72 阅读 · 1 评论 -
Range Set Query(区间中数的种类数)
对于当前遍历到的右端点,此时的右端点所占有的数是a[i],如果前面也有a[i],将前面的a[i]删除,然后将右端点的a[i]插入,**对于每一个询问[l,r],将l记录到右端点所在的vector中,然后遍历右端点。给一个序列,并且给出q个询问,每一个询问查询一个区间内的数的种类数。下标树状数组+离线处理+vector。,**插入的是下标i,并不是a[i]原创 2023-07-05 19:11:53 · 70 阅读 · 1 评论 -
写作业:状压dp
题目题解原创 2023-04-12 21:23:10 · 31 阅读 · 0 评论