代码编织梦想

nicn的刷题日常之调整奇数偶数顺序-爱代码爱编程

目录 1.题目描述  2.解题思路  3.解题  1.题目描述  输入一个整数数组,实现一个函数, 来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分, 所有偶数位于数组的后半部分。 2.解题思路  1. 给定两个下标left和right,left放在数组的起始位置,right放在数组中最

nicn的刷题日常之字符逆序-爱代码爱编程

  目录 1.题目描述  输入描述: 输出描述: 输入 输出 输入 输出 2.解题思路  3.解题   4.利用指针思想   1.题目描述  链接:字符逆序__牛客网 来源:牛客网   将一个字符串str的内容颠倒过来,并输出。 数据范围:1≤len(str)≤10000 1 \le len(str)

nicn的刷题日常之打印菱形-爱代码爱编程

  目录 1.题目描述  2.解题思路  3.解题     1.题目描述  用C语言在屏幕上输出以下图案: 2.解题思路  仔细观察图形,可以发现,此图形中是由空格和*按照不同个数的输出组成的。 上三角:先输出空格,后输出*,每行中   空格:从上往下,一行减少一个   *:2*i+1的方式递增    下三角

​nicn的刷题日常之使用指针打印数组内容-爱代码爱编程

  目录 1.题目描述  2.解题思路  3.解题     1.题目描述  写一个函数打印arr数组的内容,不使用数组下标,使用指针。 arr是一个整形一维数组。 2.解题思路  设置指针接受数组首元素的地址,理由指针++运算来实现对数组数据的访问 3.解题   #include <stdio.h

【学习笔记】详解换根法(换根dp)-爱代码爱编程

一.换根DP的概念 1.换根DP是什么? 换根DP,又叫二次扫描,是树形DP的一种。 2.换根DP能解决什么问题? 换根DP能解决不指定根结点,并且根节点的变化会对一些值产生影响的问题。例如子结点深度和、点权和等。如果要 暴力求解出最优解,则我们可以枚举所有的节点为根,然后分别跑一次搜索,这样的时间复杂度会达到 O(),显然不可接受。这时

cf1918 d. blocking elements [二分+数据结构优化dp]-爱代码爱编程

传送门:CF [前题提要]:二分+数据结构优化dp,赛时想到了二分,想到了dp,想到了应该是某种双log的做法,但是硬是想不出正确的dp的定义,看了讲解感觉dp方程的定义还是很典的,dp题写的少是这样的… 题目要求我

每日oj题_算法_前缀和②_牛客dp35 【模板】二维前缀和-爱代码爱编程

目录 二维前缀和原理 ②牛客DP35 【模板】二维前缀和 解析代码 二维前缀和原理         在一维数组前缀和算法的基础上,想到:计算二维数组前缀和,不就和计算一维数组前缀和一样,即计算每一个位置的前缀和就相当于: 此位置的前缀和 = 这个位置的值 + 此位置前的前缀和 Eg:s[3][1] = a[0][0] + a[0][1

codeforces round 922 (div. 2)(a~d)补题-爱代码爱编程

A题考虑贪心,要使使用的砖头越多,每块转的k应尽可能小,最小取2,最后可能多出来,多出来的就是最后一块k=3,我们一行内用到的砖头就是

【leetcode】01背包总结-爱代码爱编程

01 背包 关键点 容器容量固定每件物品只有两种状态:不选、选 1 件求最大价值 代码 int N, W; // N件物品,容量为W int w[N], v[N]; // w为大小,v为容量 /* 数组定义 */

codeforces round 785 c. palindrome basis-爱代码爱编程

C. Palindrome Basis 题意 定义一个正整数 a a

01背包问题 动态规划-爱代码爱编程

01背包问题 动态规划 01背包问题 动态规划写了点代码 C#实现程序运行结果代码和程序已经上传 01背包问题 动态规划 很有意思的问题。 写了点代码 C#实现 using System;

【提交ei-爱代码爱编程

第九届能源资源与环境工程研究进展国际学术会议(ICAESEE 2023)定于2023年12月29日至31日在三亚举行。会议主要围绕能源资源与环境工程等研究领域展开讨论。会议旨在为从事能源材料与电力电气研究的专家学者、工程技术人员、技术研发人员提供一个共享科研成果和前沿技术,了解学术发展趋势,拓宽研究思路,加强学术研究和探讨,促进学术成果产业化的平台。

算法总结归纳(第十二天)(剩余的图论)-爱代码爱编程

目录 一、图论 Ⅰ、spfa算法 spfa求最短路 思路: 代码: spfa判断负环 思路: 代码: Ⅱ、floyd算法 思路: 代码: Ⅲ、prime算法 思路: 代码: Ⅳ、kruskai算法 思路: 代码: Ⅴ、染色法判定二分图 思路: 代码: Ⅵ、匈牙利算法(二分图) 思路 代码:

「优选算法刷题」:只出现一次的数字Ⅱ-爱代码爱编程

一、题目 给你一个整数数组 nums ,除某个元素仅出现 一次 外,其余每个元素都恰出现 三次 。请你找出并返回那个只出现了一次的元素。 你必须设计并实现线性时间复杂度的算法且使用常数级空间来解决此问题。 示例 1: 输入:nums = [2,2,3,2] 输出:3 示例 2: 输入:nums = [0,1,0,1,0,1,

pinely round 2 f. divide, xor, and conquer-爱代码爱编程

F. Divide, XOR, and Conquer 题意 给定一个非负整数数组 a

【蓝桥杯冲冲冲】动态规划之传纸条-爱代码爱编程

蓝桥杯备赛 | 洛谷做题打卡day20 文章目录 蓝桥杯备赛 | 洛谷做题打卡day20[NOIP2008 提高组] 传纸条题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1 提

力扣1218. 最长定差子序列-爱代码爱编程

动态规划 思路: 定义 dp[v] 是值为 v 结尾的最长等差子序列个数;状态转移方程为: v 上一个序列值为 v - d,即 dp[v] = dp[v - d] + 1;通过遍历序列,动态规划找到所有序列元素的最长等差数列的个数,结果为其中最大的值;因为下标不是连续的,可以使用哈希表来存储 dp; class Solution { p

【算法】解决动态规划问题的通用步骤思路及示例算法:打家劫舍【动态规划】-爱代码爱编程

动态规划(Dynamic Programming,简称DP)是一种解决问题的算法设计技术,通常用于优化问题。它通过将问题分解为更小的子问题,并解决这些子问题,然后合并它们的解决方案来解决原始问题。动态规划通常用于具有重

算法训练营day45(动态规划7)-爱代码爱编程

70. 爬楼梯 (进阶) 卡码网:57. 爬楼梯 提醒 这道题目 爬楼梯之前做过,这次再用完全背包的思路来分析一遍  322. 零钱兑换  力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 提醒 如果求组合数就是外层for循环遍历物品,内层for遍历背包 如果求

算法训练营day46(动态规划8之多重背包)-爱代码爱编程

多重背包 关于 多重背包,力扣上没有相关的题目,所以今天的重点就是回顾一波 自己做的背包题目 本题力扣上没有原题,大家可以去卡码网第56题 (opens new window)去练习 简单介绍 有N种物品和一个容量为V 的背包。第i种物品最多有Mi件可用,每件耗费的空间是Ci ,价值是Wi 。求解将哪些物品装入背包可使这些物品的耗费的空间 总和不超