ICode9

精准搜索请尝试: 精确搜索
  • NC15033 小G有一个大树2022-08-23 12:33:17

    题目链接 题目 题目描述 小G想要把自己家院子里的橘子树搬到家门口(QAQ。。就当小G是大力水手吧) 可是小G是个平衡性灰常灰常差的人,他想找到一个这个橘子树的平衡点。 怎么描述这棵树呢。。。就把它看成由一个个节点构成的树吧。结点数就 代表树重。 输入描述 多组数据输入输出, 第一

  • DP: 走地图2022-08-22 14:32:23

    传送ABC265 https://atcoder.jp/contests/abc265/tasks/abc265_e 从原点移动n次 每次可以选择 (x,y) -> (x+a,y+b) (x,y) -> (x+c,y+d) (x,y) -> (x+e,y+f) 其中一种进行移动 求移动n次的方案数 容易想到 f(n,x,y)表示n次传送走到了(x,y) 比较困难 可以让是 f(i,j,k)表示选择了第

  • ABC 2652022-08-22 13:03:00

    E - Warp(计数、枚举、DP) Problem 在一个二维平面上,你从原点开始,可以移动\(N\)次,每次可以进行下面三种移动,假设当前位置是\((x,y)\) \((x,y)\rightarrow (x+A,y+B)\) \((x,y)\rightarrow (x+C,y+D)\) \((x,y)\rightarrow (x+E,y+F)\) 不过平面上还有\(M\)个障碍,不能移动到障碍

  • [Google] LeetCode 1937 Maximum Number of Points with Cost2022-08-22 05:30:08

    You are given an m x n integer matrix points (0-indexed). Starting with 0 points, you want to maximize the number of points you can get from the matrix. To gain points, you must pick one cell in each row. Picking the cell at coordinates (r, c) will add po

  • 1033 [NOIP2017]逛公园 记忆化搜索 比最短路长k的方案数 dp递推算方案数2022-08-22 03:30:55

     链接:https://ac.nowcoder.com/acm/contest/26077/1033来源:牛客网 题目描述 策策同学特别喜欢逛公园。 公园可以看成一张 N 个点 M 条边构成的有向图,且没有自环和重边。其中 1 号点是公园的入口, N 号点是公园的出口,每条边有一个非负权值,代表策策经过这条

  • 2022.8.21 摆烂记录2022-08-22 00:30:20

    Preface 回归 Content [luogu P4310]绝世好题 给定序列 \(a_{1\sim n}\),求子序列 \(b\) 的最长长度 \(k\),使得 \(\forall i \in [2,k],b_i\mathsf{\&}b_{i-1}\gt 0\)。 \(1\le n\le 10^5,1\le a_i \le 10^9\)。 跟二进制有关,考虑位运算。 发现 \(b_i \mathsf{\&}b_{i-1}\gt 0

  • 2022.8.21 多校周报2022-08-21 23:31:05

    总结 牛客第九场 A 一眼看出是尺取法,就A了。 B 一道很简单的概率dp,状态和转移方程都写出来了,但想着搞前缀和优化,没想到差分,就卡死了,有点可惜。 G 马拉车加哈希,但卡了除了双哈希的算法,题目很简单,但队里没有人学过字符串,就无了。 E 非常妙的构造题,利用了二进制的思想结合最长上升子

  • 挑战!每天一道 DP 题!2022-08-21 10:34:15

    2022.8.21 P2016 战略游戏 简单树形 \(DP\) P3147 [USACO16OPEN]262144 P 很奇怪的 \(DP\),令 \(f[i][j]\) 表示左端点为 \(j\),合并出 \(i\) 所到达的右端点的下一个点的位置,所以初始化时 \(f[x][i] = i + 1\) 状态转移方程:\(f[i][j] = f[i-1][f[i-1][j]]\) 感觉好玄学啊

  • [Google] LeetCode 1048 Longest String Chain2022-08-21 03:30:23

    You are given an array of words where each word consists of lowercase English letters. \(word_A\) is a predecessor of \(word_B\) if and only if we can insert exactly one letter anywhere in \(word_A\) without changing the order of the other character

  • Codeforces 1720 D, E2022-08-20 23:36:19

    D1 设\(dp(i)\)表示考虑前i个数的最长子序列。枚举\(j\),从\(dp(j)+1\)转移到\(dp(i)\),转移条件就是题中给的那个不等式。 发现\(i-j\)不能超过\(300\),暴力枚举即可。 时间复杂度\(O(300n)\)。 D2 当\(dp(j)\)能转移到\(dp(i)\),当且仅当:\(a_{j}\oplus i<a_{i}\oplus j\)。若这个不

  • "蔚来杯"2022牛客暑期多校训练营92022-08-20 20:30:40

    比赛链接: https://ac.nowcoder.com/acm/contest/33194 A.Car Show 题意: 长度为 \(n\) 的一个序列 \(a\),问有多少个区间中 \([1, m]\) 的数都出现过。 思路: 双指针。 代码: #include <bits/stdc++.h> using namespace std; #define LL long long int main(){ ios::sync_with_stdio(

  • 多重背包2022-08-20 12:01:14

    #include<iostream>//01背包问题状态转移方程dp[i][j]=max(dp[i-1 ][j],dp[i-1][j-w[i]]+p[i])区别:因为物品只能装一次所以在比较装入物品后的价值时使用i-1而不是i因为物品只能装一次 using namespace std; int main(){ int dp[101][101]={}; int n,c;//物品种类数,

  • 状压DP-1755. 最接近目标值的子序列和2022-08-20 10:02:36

    问题描述 给你一个整数数组 nums 和一个目标值 goal 。 你需要从 nums 中选出一个子序列,使子序列元素总和最接近 goal 。也就是说,如果子序列元素和为 sum ,你需要 最小化绝对差 abs(sum - goal) 。 返回 abs(sum - goal) 可能的 最小值 。 注意,数组的子序列是通过移除原始数组中的

  • 树形dp例题 + 学习笔记(入门版)2022-08-20 03:00:34

    树形dp,即在树上进行dp。 需要对树这一数据结构有清晰的了解。其中重点在于树的遍历、子树相关问题。 难点常常在于状态方程的书写。 例题 一、没有上司的舞会 题意 树上每个结点有权值,要求在树上选一些点,满足有父子关系的结点只能出现一个,问选出的最大的权值和。 思路 用 \(dp[i][

  • CodeForces-1671E Preorder2022-08-20 00:01:05

    Preorder 树型 dp + 思维 \(dp[i]\) 表示以 \(i\) 为根的子树通过变换有多少种不同的先序遍历 状态转移方程: 当左右子树不同,两个子树交换位置之后,没有重复的出现:\(dp[x] = dp[lson] * dp[rson] * 2\) 当左右子树相同时,两个子树交换位置后,会有相同的出现:\(dp[x] = dp[lson] * d

  • 状压DP-1815. 得到新鲜甜甜圈的最多组数2022-08-19 20:30:58

    问题描述 有一个甜甜圈商店,每批次都烤 batchSize 个甜甜圈。这个店铺有个规则,就是在烤一批新的甜甜圈时,之前 所有 甜甜圈都必须已经全部销售完毕。给你一个整数 batchSize 和一个整数数组 groups ,数组中的每个整数都代表一批前来购买甜甜圈的顾客,其中 groups[i] 表示这一批

  • Dp的优化2022-08-19 17:00:20

    Dp的优化 单调栈优化Dp The Great Wall II 题意: 给你 n个点,问分成 1∼n 组,每一组的代价就是这一组中的最大值,问每一种情况的最小权值和。 思路: 把状态定义为 d i j 表示 走到 i 号点了 分了j 组的最小代价。 那么先枚举分成了几组 ,枚举从哪个点转移。 d[i][j]=min(d[i][j],d[k]

  • D2. Xor-Subsequence (hard version)2022-08-19 15:31:42

    D2. Xor-Subsequence (hard version) 昨天cf的E题,挺好的一个DP优化问题。 暴力的DP就是设dp[i]表示以i结尾的最长长度。转移时枚举之前的所有j,复杂度O(n^2)。 考虑怎么优化,优化往往都是从转移条件上做文章的,我们考虑当前i的dp值怎么计算, 是所有max(f[j]+1),而且这些j满足\(a_i\)

  • 压缩空间尝试使用只与前一个状态有关的dp dp[2][N]2022-08-19 02:03:50

    之后每次迭代t^1 使得 0->1 1->0 这里有 n个世界,每个世界都有 m 个点。 在i个世界中,你最多可以选择一条边 ,从 u点 移动到 v点 (可以选择不移动)。随后进入到第 i+1 个世界中的点 。如果选择在 u 点上不移动,则进入到第 i+1 个世界的u点 。 找到一段连续的世界 ,使得可以从点 1到

  • 扑克牌(期望DP)2022-08-19 00:33:10

    题意 Rainbow 把一副扑克牌(\(54\)张)随机洗开,倒扣着放成一摞。 然后 Admin 从上往下依次翻开每张牌,每翻开一张黑桃、红桃、梅花或者方块,就把它放到对应花色的堆里去。 Rainbow 想问问 Admin,得到\(A\)张黑桃、\(B\)张红桃、\(C\)张梅花、\(D\)张方块需要翻开的牌的张数的期望值是多

  • leetcode 304. Range Sum Query 2D - Immutable 二维区域和检索 - 矩阵不可变(中等)2022-08-19 00:03:24

    一、题目大意 https://leetcode.cn/problems/range-sum-query-2d-immutable 给定一个二维矩阵 matrix,以下类型的多个请求: 计算其子矩形范围内元素的总和,该子矩阵的 左上角 为 (row1, col1) ,右下角 为 (row2, col2) 。 实现 NumMatrix 类: NumMatrix(int[][] matrix) 给定整数矩阵 m

  • 【DP 记录】AcWing 734. 能量石2022-08-18 20:31:16

    传送门 给你几个物品,每种选一次,求最大价值,首先想到 01 背包,但是我们遇到了一个问题: 普通的 01 背包在选择物品时是不讲求顺序的,但在这道题中,物品的选择是有顺序的(即对最优解贡献有顺序),显然 \(O(n!)\) 枚举排列不可取,那我们能否提前确定好顺序,再来做背包呢? $\bullet\ $ 考虑从贪心

  • leetcode115-不同的子序列2022-08-18 17:03:32

    不同的子序列 dp 维护一个二维dp数组,分别表示s[0:i]和t[0:j]的分配种类。 如果j等于0,由于模式串没有进行匹配,那么对于所有的原串来说,都只有一种匹配方式,所以需要赋值1。 然后进行遍历,如果s[i]和t[j]相同,那么有两种选择,匹配或者不匹配,dp[i][j] = dp[i-1][j-1] + dp[i][j-1]。如果

  • 区间DP の 题(内含 最长回文串,石子合并,删除字符串,乘积最大,释放囚犯)2022-08-18 12:02:01

    乘积最大   由于题目给定的是m,需要分解成m+1部分的乘积,不难想到乘号刚好是m个,那么该题就转化成了m个乘号的插入方式。   最优子结构分析:       设数字字符串为a1a2…an            m=1 时,一个乘号可以插在a1a2…an中的n-1个位置,这样就得到n-1种乘积:        

  • luogu P1721 [NOI2016] 国王饮水记2022-08-18 08:32:28

    题面传送门 首先我们发现,一定不会有低于\(h_1\)的参与操作的过程。 然后考虑一个\(x\)与比它大的\(y<z\),则发现一定是先\((x,y)\),再\((\frac{x+y}{2},z)\)更好。 因为这样是\(\frac{4}{x+y}+\frac{z}{2}\),而一起做是\(\frac{x+y+z}{3}\),显然更优。 而每个节点一定只会和一号节点联

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

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

ICode9版权所有