ICode9

精准搜索请尝试: 精确搜索
  • dp----状态机模型2022-09-03 21:04:18

    《需求引出》 《情况一:》 在一般的dp问题中,我们的当前项都是可以由前一项推出的, 但是在一些情况下我们要用到前前项的情况,这个时候可以将这个情况当做一个状态表示出来,进行转移    其中0表示:f[i][0]:在第i家店铺,不偷时的最大值 其中1表示:f[i][1]:在第i家店铺,偷时的最大值 转载

  • cdq分治2022-09-03 19:32:36

    cdq分治,一种广为人知的离线分治算法。大体的思想是: 将左右两边区间分开递归处理。 统计左边区间修改对右边区间查询的影响。 第一步很简单,写两个递归就行了。关键在第二步。我们搞个cdq的经典问题——三维偏序来具体解释这个东西。 P3810 【模板】三维偏序(陌上花开) 三维偏序,顾名

  • 9月杂题2022-09-03 17:05:16

    1. LIS with Stack difficulty 非常恐怖的题,但是远没有这么难。 考虑对于确定的序列 \(a_1,a_2,...,a_n\) 来说,如何判断 \(a\) 能否栈排序。 容易发现 \(a\) 可以栈排序的充要条件是不存在 “\(2-3-1\)” 型的子序列,即不存在三个位置 \(i\lt j\lt k\) 满足 \(a_k\lt a_i\lt a_j\)

  • NC15832 Most Powerful2022-09-03 12:03:35

    题目链接 题目 题目描述 Recently, researchers on Mars have discovered N powerful atoms. All of them are different. These atoms have some properties. When two of these atoms collide, one of them disappears and a lot of power is produced. Researchers know the wa

  • 2019ACM-ICPC 西安邀请赛 D.Miku and Generals——二分图染色+01背包2022-09-03 11:34:44

    目录题意思路代码 目录 题意 将n个将军卡片分成两份,要求两份卡片之间的差值尽可能小,求最大的那一份卡片的和,这里有m组卡片是不能放在同一份的 思路 对有矛盾的组我们建图进行01染色,对于每一个连通块得到所有的0点和1点的差值的绝对值,我们存在数组ve中,单点也加入ve中,相当于一份是x

  • 29. 牛客-一人行者2022-09-03 11:02:37

    本来不想为了这题写一篇博客的,但因为昨天被一组数据卡了一个小时,还是有必要来记录一下。 牛客练习赛 102D:一人行者 题意是给一棵树,求断掉每一条边后得到的两棵树各自的联通子集数量,对 \(998244353\) 取模。 容易想到树形 dp,令 \(dp[u][0/1]\) 表示 \(u\) 的子树中是否包含 \(u\)

  • [Google] LeetCode 562 Longest Line of Consecutive One in Matrix2022-09-03 03:00:49

    Given an m x n binary matrix mat, return the length of the longest line of consecutive one in the matrix. The line could be horizontal, vertical, diagonal, or anti-diagonal. Solution 我们需要统计行、列以及对角线中最长的连续的 \(1\) 的数量。 直接考虑 \(dp[i][j

  • NC51189 Mondriaan's Dream2022-09-03 01:00:08

    题目链接 题目 题目描述 Squares and rectangles fascinated the famous Dutch painter Piet Mondriaan. One night, after producing the drawings in his 'toilet series' (where he had to use his toilet paper to draw on, for all of his paper was filled with squares

  • NC20240 [SCOI2005]互不侵犯KING2022-09-03 00:32:28

    题目链接 题目 题目描述 在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案。 国王能攻击到它上下左右,以及左上 左下右上右下八个方向上附近的各一个格子,共8个格子。 输入描述 只有一行,包含两个数N,K ( 1 ≤ N ≤ 9, 0 ≤ K ≤ N * N) 输出描述 方案数。 示例1 输入 3 2

  • 【luogu P5056】【模板】插头dp(插头DP)(分类讨论)2022-09-02 21:33:38

    【模板】插头dp 题目链接:luogu P5056 题目大意 有一个 n*m 的网格,每个格子要么必须铺线,要么必须不铺。 然后问你有多少个铺发使得形成一个闭合回路。 思路 快乐插头 DP 模板题。 首先默认都会插头 DP,其实不会也没啥,其实就是你压你当前处理的位置跟没处理的分界线(一般叫轮廓线)。 所

  • P1005 [NOIP2007 提高组] 矩阵取数游戏 题解2022-09-02 20:34:46

    luogu原题传送门 [NOIP2007 提高组] 矩阵取数游戏 题目描述 帅帅经常跟同学玩一个矩阵取数游戏:对于一个给定的 \(n \times m\) 的矩阵,矩阵中的每个元素 \(a_{i,j}\) 均为非负整数。游戏规则如下: 每次取数时须从每行各取走一个元素,共 \(n\) 个。经过 \(m\) 次后取完矩阵内所有元素

  • 又双叒叕写挂啦啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊2022-09-02 20:02:28

    2022.09.01 数位DP一定要以 -1 作为没有搜到的标志, 不要是0 。原因:设为 \(0\) 时会导致反复搜索整颗搜过的值为 \(0\) 的搜索树,会浪费大量时间。(HDU3709,因为将没有提前 memset 导致 \(TLE\) )

  • NC16886 [NOI2001]炮兵阵地2022-09-02 20:01:19

    题目链接 题目 题目描述 司令部的将军们打算在N*M的网格地图上部署他们的炮兵部队。一个N*M的地图由N行M列组成,地图的每一格可能是山地(用"H" 表示),也可能是平原(用"P"表示),如下图。在每一格平原地形上最多可以布置一支炮兵部队(山地上不能够部署炮兵部队);一支炮兵部队在地图上的攻击范

  • NC24734 [USACO 2010 Mar G]Great Cow Gathering2022-09-02 00:02:32

    题目链接 题目 题目描述 Bessie is planning the annual Great Cow Gathering for cows all across the country and, of course, she would like to choose the most convenient location for the gathering to take place. Each cow lives in one of N (1 <= N <= 100,000) diff

  • 代码源#960. 一个大整数(用DP实现组合计数)2022-09-01 23:33:19

    题目: ​ 给出一个很大的整数x,以质因数分解的方式给出,请问有多少对x的因子是互质的。 分析: ​ 来枚举一下样例,可以发现12的因子有1,2,3,4,6,12。互质的因子对为(1, 1), (1, 2), (1, 3), (1, 4), (1, 6),(1, 12), (2, 1), (2, 3), (3, 1), (3, 2),(3, 4), (4, 1), (4, 3), (6, 1), (

  • 2022 HDU多校82022-09-01 23:31:36

    Theramore(思维) Problem 给定一个01串,可以进行无限次操作,每次操作可以把一个长度为奇数的区间翻转,问可以得到的字典序最小的01串是多少 Solve hit1:反转后奇数位置还是在奇数位置,偶数位置还是在偶数位置 因此上面操作其实相当于我们可以把一个奇数位置移动到任意奇数位置,偶数位

  • 最近的一些 CF 题(9.1起)2022-09-01 19:00:32

    1. CF623B B. Array GCD 先考虑没有操作 2 的情况,由于不允许全删,所以至少会留下 \(a_1\) 与 \(a_n\) 中的一个,那么它们的质因数中必有一个需要成为公因数,由于 最大公因数 是 公因数 的倍数,所以这样是满足 \(\gcd > 1\) 的充要条件。 现在加入了操作 2,那么就把 \(a_1, a_n, a_1\pm

  • 飞扬的小鸟2022-09-01 18:01:58

    P1941 [NOIP2014 提高组] 飞扬的小鸟 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) dp[i][j]代表i,j位置的最小答案,如果有解,那么答案为n行的最小值,如果没有,就找到第一个有解的位置(非INF),然后找这一路上一共出现过多少次障碍物 dp过程中有上升和下降两种处理,上升时又分成上升一次

  • 【笔记】入门DP(Ⅱ)2022-08-31 20:30:22

    0X00 P1433 吃奶酪 状压 \(DP\),把经过的点压缩成01串。若第 \(i\) 位为 \(0\) 表示未到达,为 \(1\) 则表示已到达。 用 \(f[i][j]\) 表示以 \(i\) 为起点,经过 \(j\) 所含 \(1\) 位置的所有点的最小距离。 先预处理出点两两之间的距离,记为 \(dis[i][j]\),初始化 \(f\) 数组为极大值(\(

  • ak日记 831 dxm2022-08-31 20:02:14

    import sys from math import inf line = sys.stdin.readline().strip() vs = list(map(int, line.split())) n, k = vs[0], vs[1] line = sys.stdin.readline().strip() vs = list(map(int, line.split())) dp = [[0]*n for _ in range(n)] ans = 0 for i in range(n-1, -1,

  • J [NOIP2013]货车运输 lca 最大生成树 点和点之间所有路径最小值的最大值2022-08-31 17:33:35

     链接:https://ac.nowcoder.com/acm/problem/16527来源:牛客网 题目描述 A 国有 n 座城市,编号从 1 到 n ,城市之间有 m 条双向道路。每一条道路对车辆都有重量限制,简称限重。现在有 q 辆货车在运输货物, 司机们想知道每辆车在不超过车辆限重的情况下,最多能运

  • 动态规划之——最长递增子序列2022-08-31 14:31:55

    最长递增子序列(Longest Increasing Subsequence)是指在给定的一组数字中,按照从左向右顺序,由递增的数字组成的子序列(中间可以有间隔)中,取长度最大的子序列即为最长递增子序列。 如给定“1 2 4 3”,则递增的子序列有“1 2”、“1 4”、“1 3”、“2 4”、“2 3”、“1 2 4”、“1 2 3”

  • C20220806T1 暴力计算2022-08-31 13:04:42

    给定一张图,按照边权走,求总边权达到 \(M\) 时用的最短长度。 \(n\leq 100,M\leq 10^{18}\) 。 首先可以用 \(dp[i][j][k]\) 表示从 \(i\) 出发通过 \(2^k\) 步走到 \(j\) 能产生的最大价值。 那么有 \(dp[i][j][k]=\max\{dp[i][x][k-1]+dp[x][j][k-1]\}\) ,可以用floyd来转移,然后再

  • AtCoder Beginner Contest 266 G,H2022-08-31 09:30:13

    G 考虑先放G和B,此时共有\(C_{G+B}^{B}\)种方案。 然后选出\(k\)个G,在前面放上\(R\),共有\(C_{G}^{k}\)种方案。 最后我们放剩下的\(R-K\)个R,考虑目前哪些区间内部可以放一段连续的\(R\)。可以发现,单独G的后面,以及B的前后,RG的前后是可以放的,总共是\(B-k+1\)个区间内可以放\(R\)。那

  • The 2021 Shanghai Collegiate Programming Contest D. Zztrans 的班级合照2022-08-29 20:00:33

    计数dp好题 用组合数想了一下,需要容斥,情况太复杂 用计数dp,\(dp[i][j]\)表示前\(i\)个人有\(j\)个在第一排,并且按照身高遍历i,这样满足了第一个偏序关系(“排成人数相同的两排,每排从左向右身高都不递减”),然后只要保证第二排的人数少于等于第一排的人数,就能满足第二个偏序关系(“且第二

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有