文章分类 -  OI题目 / 提高难度

摘要://URL:https://www.luogu.com.cn/problem/P2518 /* 现在给定一个数,你可以删掉这个数中的任意多个数位 00(或不删) 并将其他的数位任意重新排序。 请求出能产生出多少个不同的这个数小的数(注意这个数不会有前导 0) 例如,给你一个排列:2 4 5 3 1, 阅读全文
posted @ 2024-02-05 04:22 JMXZ
摘要://URL:https://www.luogu.com.cn/problem/P2657 /* 数位dp 1.若前面有小于目标位数字的 后面可以任意选 2.直接用记忆化搜索 3.若有前导零 后一位任意 4.若未搜完 done==1 就是还要搜 只有done 0才可以return f[pos][sta 阅读全文
posted @ 2024-01-15 04:17 JMXZ
摘要://URL:https://www.luogu.com.cn/problem/P2512 /* 有 nn 个小朋友坐成一圈,每人有 aiai​ 个糖果。每人只能给左右两人传递糖果。每人每次传递一个糖果代价为 11。 1.任两个相邻的人之间只传递一次 2.向左传递 xi 个 >0 lft pass < 阅读全文
posted @ 2023-12-31 21:11 JMXZ
摘要://URL: https://www.luogu.com.cn/problem/P3628 /* 你有一支由 nn 名预备役士兵组成的部队,士兵从 11 到 nn 编号,你要将他们拆分成若干特别行动队调入战场。出于默契的考虑,同一支特别行动队中队员的编号应该连续,即为形如 (i,i+1,⋯i+k)( 阅读全文
posted @ 2023-12-25 04:23 JMXZ
摘要://URL: https://www.luogu.com.cn/problem/P3195 /* P3195 [HNOI2008] 玩具装箱 斜率DP P 教授要去看奥运,但是他舍不下他的玩具,于是他决定把所有的玩具运到北京。他使用自己的压缩器进行压缩,其可以将任意物品变成一堆,再放到一种特殊的一维 阅读全文
posted @ 2023-12-25 03:55 JMXZ
摘要:/* 约翰开车来到镇上,他要带KK吨饲料回家。运送饲料是需要花钱的,如果他的车上有XX吨饲料,每公里就要花费X2X2元,开车D公里就需要D×X2D×X2元。约翰可以从NN家商店购买饲料,所有商店都在一个坐标轴上,第ii家店的位置是XiXi​,饲料的售价为每吨CiCi​元,库存为FiFi​。 约翰从坐 阅读全文
posted @ 2023-12-20 02:49 JMXZ
摘要:/* 某国进行了连续 nn ( 1≤n≤1,000,0001≤n≤1,000,000)天的温度测量,测量存在误差,测量结果是第 ii 天温度在 [li,ri][li​,ri​] 范围内。 求最长的连续的一段,满足该段内可能 温度不降》= 唯一判断标准 若这一天最大值<前一段的左端点的最大值 则不可能 阅读全文
posted @ 2023-12-18 02:53 JMXZ
摘要:/* 第i只鸟在第j棵树 可以飞到j+1~j+ki棵 若后一棵树更高 花费1 问第i只鸟 最小花费 f[i]飞到第i棵树 最小花费 f[i]=min(a[j]>a[i]? f[j]:f[j]+1) i-ki<=j<=i-1 单调队列维护f[i] 若a[i]大且f[i]小 于 a[j] j 出列 */ 阅读全文
posted @ 2023-12-14 04:49 JMXZ
摘要:/* n<=24张卡牌ai 随意选择顺序 若过程中值==厄运数字 失败 否则成功 问成功的方案数 dfs->RE 考虑状压dp f[i]:i状态下成功的方案数 f[i]=sum(f[i^(1<<j-1)]) (i&(1<<j-1)==1) f[0]=1(f[1]=f[0]+0) dis[i]=dis 阅读全文
posted @ 2023-12-10 12:49 JMXZ
摘要:/* n个字符串 问恰好匹配(si==ti||si=='?')k个串 的字符串T的方案数 二项式反演 共n个元素 fi至少选出i个元素的方案数 gi恰好i个 fi=C(i,i)gi+C(i+1,i)gi+1...+C(n,i)gn gi=C(i,i)(-1)^(n-i)*fi+C(i+1,i)(-1 阅读全文
posted @ 2023-12-10 04:01 JMXZ
摘要:/* 吗 m<=20 状态dp 初始 n个人排成一排 m<=10集合 问如何让最少的人出列 使队伍中 每个集合的人都连续 1.集合不用按编号 只要连续就行 2.只要统计最后不符合的人数就行 --暴力枚举集合排列顺序 -20 3.只要确定状态 区间[i,i+sum[j]-1] 4.考虑局部最优情况 f 阅读全文
posted @ 2023-11-21 05:44 JMXZ
摘要:/*k<=16->状态dp 有n个物品 k枚硬币 可以随时停下来 按顺序购买 之前累计的未付款 货物 但不能找零 问最多可以剩下多少钱 / -1 1.f[i][j]:i物品从j开始 可以连续买几个->到编号几 2.dp[i]:在硬币选择上 i 状态 最多到第几个 :i 0~(1<<k)-1 :j 1 阅读全文
posted @ 2023-11-21 03:34 JMXZ
摘要:/*状态dp n*n的棋盘 放k个国王 攻击8个临近格子 问有多少方法 f[i][p][k]前i行 NO i 状态 sit[p] 放了p个 f[i][p][k]=sum(f[i-1][L][k-sum(k)]) */ /* */ #include<cstdio> #include<cstring> 阅读全文
posted @ 2023-11-16 04:55 JMXZ
摘要:/* n*m的 0、1图 只有 1 可以种草 每个草 不相邻(没有哪两块草地有公共边) 问有多少种方法分配 状态dp f[i][p]:第i行 状态位p 的方案数 f[i][p]=f[i][p]+f[i-1][k] */ /* */ #include<cstdio> #include<iostream 阅读全文
posted @ 2023-11-15 05:11 JMXZ
摘要:/*状态dp n*m的图中 每次选一点 覆盖 。 . 。。+ 。 。 。 。 +不能被。覆盖 问最多能放置几个 m<=10 选/不选 ->状压 dp[i][P][k][L]=max(dp[i][P][k][L],dp[i-1][k][L][F]+sum(P)) 第一维不能滚掉 因为 不是紧接着更新的 阅读全文
posted @ 2023-11-15 04:05 JMXZ
摘要:/* 每一个人只有一个厌恶的point 问选取若干个point 其权值max 可以有环 厌恶是一种偏序关系 u hate v -> v->u 即可 即可能是 基环树 或 树 基环树枚举 root 和fa[root] 不选 树 不影响 */ /* 3 10 2 20 3 30 1 30 */ #inc 阅读全文
posted @ 2023-11-12 12:31 JMXZ
摘要://URL: https://www.luogu.com.cn/problem/P1312 /* 7*5的 棋盘 问最少几次可以清空 1.将(i,j) 左/右 交换 val-> null/val 2.行或列 有连续3个方块 会自动消掉 * * * * 包括这样的连通块 *** *** 3.每次操作后 阅读全文
posted @ 2023-10-28 11:18 JMXZ
摘要:/* 3 2 3 1 0 1 3 1 2 3 2 2 1 3 0 2 1 5 3 1 2 5 4 5 1 3 3 2 3 1 4 3 3 2 1 2 1 2 */ /* 通过置换环 知道 答案是 所有 pi<i 的数 所以统计一下就可以了 O(N^2) 每一个数 对 每次询问的答案 的贡献 是一个区 阅读全文
posted @ 2023-10-22 09:50 JMXZ
摘要:/* ax+by+cz 有多少种可能 单变量思想 将 x单独独立出来 -> -y+ -z 可以由x部分代替 ->dp[i] %x==i 的最小楼层 dp[i+y]=dp[i]+y 但是推到方向不是单向 可能由更小的推导出来 ->spfa x==1|| ans=h (h-dp[])/h+1 -> dp 阅读全文
posted @ 2023-09-17 16:08 JMXZ
摘要:/* ->树中的节点都只有一个爹 ->最深的未被覆盖的点 的祖父 应该设立消防站 -> ai<i fa[i]已出现 选取一个点时 更新父 祖父 节点的信息+兄弟点也会影响 父代 信息-> min() ->cover[i] 离i最近的消防站距离 */ #include<cstdio> #include 阅读全文
posted @ 2023-09-17 16:07 JMXZ