代码编织梦想

atcoder beginner contest 336 d -爱代码爱编程

题目链接 题意:就是给你一个长为n的序列,让你通过两种不限次数的操作 使其变为金字塔序列,(a1<a2<ak>ak-1>ak-2...>an) 两种操作分别是1:让任何一个数减一;2:去掉队头队尾 其实我们想这和最长连续上升(下降)有点关系, dp[ i ]表示以i为结尾的最长上升长度 我们求出每个数的左右 最长连续

atcoder beginner contest 336 e -爱代码爱编程

E - Digit Sum Divisible 题意 定义一个正整数 x

atcoder beginner contest 328题解(f,g)-爱代码爱编程

abc328题解 F - Good Set Query 题意:N个元素序列X,给Q个关系 (

atcoder beginner contest 341_atcoder beginner contest 341)-爱代码爱编程

A - Print 341 (atcoder.jp)         1.思路:模拟输出即可。         2.代码: #include <bits/stdc++.h> #define rep(i,z,n) for(int i = z;i <= n; i++) #define per(i,n,z) for(int i = n;i

codeforces round 873 (div. 2)_d1. range sorting (easy version)-爱代码爱编程

Problem - D1 - Codeforces (Unofficial mirror by Menci) D1. Range Sorting (Easy Version) - 区间DP解法 贪心结论:  操作的区间都不相交 用反证法证明,如果存在两个相交的区间,那么把相交的区间,合并成一

leetcode 刷题 [c++] 第139题.单词拆分-爱代码爱编程

题目描述 给你一个字符串 s 和一个字符串列表 wordDict 作为字典。如果可以利用字典中出现的一个或多个单词拼接出 s 则返回 true。 注意:不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。

codeforces round 922 d. blocking elements_codeforces 922 d-爱代码爱编程

D. Blocking Elements 题意 给定一个正整数数组 a

codeforces round 926 (div. 2)(a,b,c,d,e,f)_sasha and the casino-爱代码爱编程

这场还是很有含金量的,B题开始就有难度了,B是个推结论的题,C要推结论然后递推,D题是有点难的树上DP(主要是状态转移方程不好写),E题是个二进制预处理然后状压DP,F题是个数论(把树映射成中序遍历dfs序,然后跑隔板法),

codeforces round 912 (div. 2)_codeforces round 922 (div. 2)-爱代码爱编程

Codeforces Round 912 (Div. 2) A 大等于2依据冒泡排序即可排序,因此判断下1即可 #include <bits/stdc++.h> using namespace std;

kmp算法-爱代码爱编程

配套练习题https://www.luogu.com.cn/problem/P3375 目录 配套练习题https://www.luogu.com.cn/problem/P3375 算法引入   算法简介         当失配时,不会直接归位重新匹配,         而是通过不断改变模式串的匹配位置来达到减小时间复杂度的目的。   莽

leetcode每日一题】 二维前缀和 -爱代码爱编程

1. 题目解析 题目链接:1314. 矩阵区域和 题目乍一看很晦涩难懂,又是大于等于又是k的 仔细分析,题目所说的意思就是以[i,j]为中心,求上下左右向外拓展k个单位的矩阵和,放在名为answer的矩阵中,最后返回answer矩阵即可 2.算法原理 在填写结果矩阵的过程中,一个核心步骤是确定原矩阵中对应区域的“左上角”和“右下角”的坐标。为

跳格子3 (75%用例)c卷 (java&&c语言&&c++)_跳格子代码得分-爱代码爱编程

小明和朋友们一起玩跳格子游戏,每个格子上有特定的分数,score[]=[1 -1 -6 7 -17 7],从起点score[O]开始,每次最大跳的步长为k,请你返回小明跳到终点score[n-1]时,能得到的最大得分 注: 格子的总长度和步长的区间在[1, 100000]; 每个格子的分数在[-10000, 10000]区间中 输入描述 6 // 第一

「题解」动态规划:解码方法-爱代码爱编程

解码方法 题目链接 思路: 状态表示 dp[i]表示到达 i 位置时,有多少种解码方法状态转移方程 根据上面的状态表示,第 i 个数字可以自己单独解码,也可以和第 i - 1 个数字一起解码,所以dp[i]就是这两种解

打家劫舍(java版)-爱代码爱编程

📑前言 本文主要是【动态规划】——打家劫舍(java版)的文章,如果有什么需要改进的地方还请大佬指出⛺️ 🎬作者简介:大家好,我是听风与他🥇 ☁️博客首页:CSDN主页听风与他 🌄每日一句:狠狠沉淀,顶峰相见

codeforces round 932 (div. 2)c. messenger in mac 有序简化题目,dp,dp优化-爱代码爱编程

Problem - C - Codeforces 目录 题意: 思路: 状态转移方程: 参考代码: 题意: 给两个长度为n数组a,b,和整数 l 任取若干下标,使得这个式子 不超过 l 的最多下标数。 思路: 可以根据右侧部分排好序依次减。 所以我们先对数组排序,按b的大小排。 然后用动态规划求 下标 i 之前 取 j

4.6.1 蓝桥杯动态规划之数位dp_夏驰和徐策-爱代码爱编程

4.6.1 蓝桥杯动态规划之数位DP 引言 数位DP是算法竞赛中常见的动态规划类型之一,尤其在蓝桥杯等竞赛中频繁出现。这种类型的动态规划专注于数字的各个数位上,解决与数字的数位有关的问题。本文将介绍数位DP的基本概念、核心思想及其在实际问题中的应用。 数位DP的概念 数位DP是一种用于解决涉及数字的各个数位的问题的动态规划方法。它通常用于处理与

动态规划(算法竞赛、蓝桥杯)-爱代码爱编程

1、B站视频链接:E36 数位DP 数字游戏_哔哩哔哩_bilibili #include <bits/stdc++.h> using namespace std; const int N=12; int a[N];//把整数的每一位数字抠出来,存入数组 int f[N][N];//f[i][j]表示一共有i位,且最高位数

动态规划 leetcode 509 斐波那契数-爱代码爱编程

斐波那契数 Leetcode 509 学习记录自代码随想录 斐波那契数 (通常用 F(n) 表示)形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是: F(0)

随想录算法训练营第五十四天|392.判断子序列、115.不同的子序列-爱代码爱编程

392.判断子序列 public class Solution { public bool IsSubsequence(string s, string t) { if(s.Length==0) { return true; } int k=0;