ICode9

精准搜索请尝试: 精确搜索
  • LeeCode 动态规划(一)2022-09-09 13:02:42

    简述 如果某一问题存在很多重叠子问题,使用动态规划是非常有效的。 动态规划与贪心 贪心:每次都选择局部最优解 动态规划:每个状态都是由前一个状态推导得到 动态规划解题步骤 确定 dp数组 及下标的含义 确定递推公式 dp数组 初始化 确定遍历顺序 LeeCode 509:斐波那契数 题目描述

  • Problem P12. [算法课动态规划]背包问题2022-09-09 11:33:02

    01背包问题,每件物品都有放和不放这两种选择。 使用动态规划思想:有n件物品情况下的总价值最大背包和有n-1件物品情况下的总价值最大背包有关。 我也讲不大明白,对背包问题有兴趣的可以去这看看:https://zhuanlan.zhihu.com/p/93857890 #include<iostream> #include<bits/stdc++.h>

  • 2022.9.8模拟2022-09-09 08:30:29

    100 + 100 + 40 = 240 pts T1 T2很水... T3怎么说呢,我没有想到如何来dp,所以写了一个大膜你的贪心,骗了40分,虽然显然是假的。 那正解的dp是一个五维的,只能说自己还欠缺这种复杂状态的dp转移设计能力吧,还缺少看出来这么个东西是五维dp的能力。 dp不会做,刷题!

  • Educational Codeforces Round 135 (Rated for Div. 2) A-D2022-09-09 02:00:09

    A. Colored Balls: Revisited 如果所有数加起来都没有最大值大,那最后剩下来的就是最大值 否则最后剩下来的可以是任何一个数 //#define int ll const int N = 2e5+10; int n,m; int a[N]; void solve() { cin>>n; int mx = 0,sum = 0,id; fo(i,1,n) { ci

  • 优化dp2022-09-08 22:04:47

    单调队列优化dp 单调队列 单调队列是一种特殊的双端队列,其内部元素具有单调性。常见有最大队列和最小队列两种单调队列,其内部元素分别是单调递减和单调递增的。 支持两种操作 -插入:如果新元素从队尾插入后会破坏其单调性,则删除队尾元素,直到插入后不再破坏单调性为止,再将其插入单

  • P5298[PKUWC2018]Minimax (线段树合并)2022-09-08 18:01:19

    题目链接   思路:因为所有点的权值是互不相同的,并且概率\(0 < p_x < 1\),也就是所有的点都会被选到。所以用\(dp[i][j]\)来表示节点\(i\)权值为\(j\)的概率。首先考虑叶子节点,叶子节点都没有子节点所以他们的权值是确定的,\(dp[i][j] = [i = val]\);再考虑只有一个子节点的节点,那

  • [NOIP2014 提高组] 飞扬的小鸟题解2022-09-08 13:03:02

    [NOIP2014 提高组] 飞扬的小鸟题解 题目描述 Flappy Bird 是一款风靡一时的休闲手机游戏。玩家需要不断控制点击手机屏幕的频率来调节小鸟的飞行高度,让小鸟顺利通过画面右方的管道缝隙。如果小鸟一不小心撞到了水管或者掉在地上的话,便宣告失败。 为了简化问题,我们对游戏规则进行

  • ARC 记录2022-09-07 21:02:19

    ARC145F Modulo Sum of Increasing Sequences 先考虑 \(p\mid n\) 的情况,令 \(b=\frac pn\)。 典中典。 列出生成函数: \[[x^ky^m](\prod_{i=0}^{n-1}(1+x^iy))^b\bmod(x^n-1) \]一个关于循环卷积的结论是:(就是对多项式的每个位置单位根反演然后线性组合) \[[x^0]f\bmod(x^n-1)=\frac

  • remake(DP)---数位dp篇2022-09-07 03:01:08

    模板总结 寄搜模板 ll dp[N][state]; // 状态根据题目性质改变, 例子记录数位中 非零 数位的个数 // 从高位向低位递归 ll dfs(int pos, int cnt, bool lead, bool limit){ // (当前数位, 根据题目需要记录状态, 是否有前导零, 前面的数位是否填满) if(pos == -1) retu

  • Two Permutations (DP搜索的方式) (2022杭电多校3)2022-09-06 21:31:00

    题目: 给出长度为 n  的全排列 p , q ,还有一个由 p , q 组成的长度为 2 × n 的 S 。现在有一个空序列 R  ,每次可以从 p  或 q 的开头取出一个数字并加到 R 的末尾,问有多少种取法使得 R = S , n<=3e5 思路: 对于s 的一个位置, 就可能2个位置,来计算贡献,  dp[i][j],来表示种

  • leetcode 45 跳跃游戏 最少次数 C/C++ 动态规划2022-09-06 19:32:43

    动态转移方程   dp[pos] = min{dp[pos-k] +1}   当a[pos-k] >= k ,  k 是两次状态之间a的物理距离。    动态规划并不是这个例子的最好解法,时间复杂度 n^2, 空间复杂度有n, 在 n 比较大时,在有些平台并不能通过。 class Solution { public:     int jump(vector<int>

  • 数位dp2022-09-05 22:04:28

    数位dp 目录数位dp简介题同类分布\(\text{Balanced Number}\) 简介 数位 \(dp\) 是一种在数位上进行的 \(dp\),通常用于解决值域 \([L,R]\) 中有几个数满足条件,且 \([L,R]\) 极大 (如 \(1\le L\le R\le 1e18\)) 的问题,这时我们就会在数位上进行 \(dp\),问题规模变为 \(\lg R\) 的 数

  • DP 优化2022-09-05 15:03:39

    只是 DP 优化罢了,其他乱七八糟的 DP 根本不会。 全文只是我自己的理解,有逻辑上的错误请指出来 qwq 斜率优化 DP 斜率优化的流程是这样的。 首先列出 DP 式子,接着钦定两个在当前位置之前的变量。 形式化地,当前转移目标为 \(i\),钦定 \(1 \le j_1<j_2<i\)。 接着钦定 \(j_1<j_2\) 且

  • Warp(DP)2022-09-05 00:33:42

    题意 有一个人站在二维平面的原点处。 他将会进行\(N\)次传送,每次传送他可以做如下三种移动中的一种: 从当前位置\((X,Y)\)移动到\((X+A,Y+B)\) 从当前位置\((X,Y)\)移动到\((X+C,Y+D)\) 从当前位置\((X,Y)\)移动到\((X+E,Y+F)\) 有\(M\)个障碍物,分别位于\((X_1,Y_1),\dots, (X_M

  • papamelon 305. 求和方案 Sumsets2022-09-04 23:33:33

    https://www.papamelon.com/problem/305 给你一个数N,只能用2的幂次求和组成,问总共有多少种方案. 输入 包含多组测试数据,输入以EOF作为结束标志. 每组测试数据包含一个整数NN. 1≤N≤1,000,000 输出 输出一个整数. 由于结果可能会非常大,因此输出末尾的九位数. 样例 1 输入 7

  • leetcode 674 最长连续递增序列 C/C++ 动态规划,动态规划空间优化,双指针 三种解法,初识动态规划2022-09-04 19:33:06

    #if 0 class Solution {  //动态规划 public:     int findLengthOfLCIS(vector<int>& nums) {         vector<int> dp(nums.size());         int max = 0;         for(int i = 0;i< nums.size()-1; i++){           

  • Index × A(Not Continuous ver.)2022-09-04 16:04:54

    Index × A(Not Continuous ver.) (背包问题) 题目大意同Index × A,只是这里的取值可以任意了,但是要有顺序,说白了题目就是要你在一堆数中选出M个数,让这M个数的乘权重后的和最大 AC代码 #include <cstdio> #include <iostream> #include <cstring> #include <algorithm> #define ll

  • [Google] LeetCode 329 Longest Increasing Path in a Matrix 记忆化搜索2022-09-04 06:30:08

    Given an m x n integers matrix, return the length of the longest increasing path in matrix. From each cell, you can either move in four directions: left, right, up, or down. You may not move diagonally or move outside the boundary (i.e., wrap-around is no

  • NC19885 [AHOI2009]CHESS 中国象棋2022-09-04 04:00:08

    题目链接 题目 题目描述 在N行M列的棋盘上,放若干个炮可以是0个,使得没有任何一个炮可以攻击另一个炮。 请问有多少种放置方法,中国像棋中炮的行走方式大家应该很清楚吧.一个炮要能攻击另一个炮他们必须要处于同一行或者一列且他们之间有且仅有一个棋子. 输入描述 一行包含两个整数N,M

  • NC24158 [USACO 2015 Jan G]Moovie Mooving2022-09-04 02:00:08

    题目链接 题目 题目描述 Bessie is out at the movies. Being mischievous as always, she has decided to hide from Farmer John for L (1 <= L <= 100,000,000) minutes, during which time she wants to watch movies continuously. She has N (1 <= N <= 20) movies t

  • NC210981 mixup2混乱的奶牛2022-09-04 01:02:43

    题目链接 题目 题目描述 混乱的奶牛 [Don Piele, 2007] Farmer John的 N(4 <= N <= 16) 头奶牛中的每一头都有一个唯一的编号 \(S_i (1 <= S_i <= 25,000)\). 奶牛为她们的编号感到骄傲, 所以每一头奶牛都把她的编号刻在一个金牌上, 并且把金牌挂在她们宽大的脖子上. 奶牛们对在挤

  • NC16544 简单环2022-09-03 23:34:42

    题目链接 题目 题目描述 给定一张n个点m条边的无向图,求出图中所有简单环的数量。(简单环:简单环又称简单回路,图的顶点序列中,除了第一个顶点和最后一个顶点相同外,其余顶点不重复出现的回路叫简单回路。或者说,若通路或回路不重复地包含相同的边,则它是简单的) 输入描述 第一行三个数n

  • 8.26~9.3小记2022-09-03 23:04:39

    记录一下这几天场切的一些我觉得比较难的题,以及一些练习题。 题目名 算法 感悟 P5050 【模板】多项式多点求值 多项式取模,分治FFT 现在才学多少有点逊 P5606 小 K 与毕业旅行 多点求值+二项式反演 [会做wi>0,妙妙思维]+[会计数基本技巧],会记录一下前一部分 ABC267G Incr

  • NC16122 郊区春游2022-09-03 23:01:16

    题目链接 题目 题目描述 今天春天铁子的班上组织了一场春游,在铁子的城市里有n个郊区和m条无向道路,第i条道路连接郊区Ai和Bi,路费是Ci。经过铁子和顺溜的提议,他们决定去其中的R个郊区玩耍(不考虑玩耍的顺序),但是由于他们的班费紧张,所以需要找到一条旅游路线使得他们的花费最少,假设他们

  • CSP-S加赛12022-09-03 21:31:43

    A. antipalindrome 真 · 签到题 然后忘了给 \(m\) 取模, 挂了 \(10pts\) 考虑任何大于\(1\) 的回文, 必然存在相邻两个字母相同,或者中间隔一个字母,那么从前往后考虑每一个位置,他有 \(m - 2\) 种可选方案 答案就是 \(m * (m - 1) * (m - 2) ^{n - 2}\) code #include<cstring> #inc

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

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

ICode9版权所有