<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[chenweiye1的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/chenweiye1</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; chenweiye1]]></copyright><item><title><![CDATA[最长不下降子序列]]></title><link>https://blog.youkuaiyun.com/chenweiye1/article/details/115799721</link><guid>https://blog.youkuaiyun.com/chenweiye1/article/details/115799721</guid><author>chenweiye1</author><pubDate>Sat, 17 Apr 2021 19:54:46 +0800</pubDate><description><![CDATA[**
最长不下降子序列
**
题目描述

一个数的序列bi，当b1 &lt; b2 &lt; … &lt; bS的时候，我们称这个序列是上升的。对于给定的一个序列(a1, a2, …, aN)，我们可以得到一些上升的子序列(ai1, ai2, …, aiK)，这里1 &lt;= i1 &lt; i2 &lt; … &lt; i；K &lt;=N。比如，对于序列(1, 7, 3, 5, 9, 4, 8)，有它的一些上升子序列，如(1, 7), (3, 4, 8)等等。这些子序列中最长的长度是4，比如子序列(1]]></description><category></category></item><item><title><![CDATA[背包问题总结]]></title><link>https://blog.youkuaiyun.com/chenweiye1/article/details/115582602</link><guid>https://blog.youkuaiyun.com/chenweiye1/article/details/115582602</guid><author>chenweiye1</author><pubDate>Sat, 10 Apr 2021 20:58:18 +0800</pubDate><description><![CDATA[背包问题总结
背包问题是动态规划（ dp ）中一类经典题型。
问题的基本情景：你有一个容量为 C 的背包，在商店，有 N 种商品 ，第 i 件商品有 s [ i ] 件，每件该物品价值 c [ i ] ,重量为 w [ i ] ,最多能买价值多少的物品。
这个问题由于条件的不同可以被分为以下略有不同的问题：

01背包问题：每种商品只有一件；
完全背包问题：每种物品都有无限件；
多重背包问题：每种物品的个数各不相同；

那么我们来分析一下这三种背包问题：
一、01背包问题
这是最基本的背包问题，这种背包问题]]></description><category></category></item><item><title><![CDATA[二分查找]]></title><link>https://blog.youkuaiyun.com/chenweiye1/article/details/113701100</link><guid>https://blog.youkuaiyun.com/chenweiye1/article/details/113701100</guid><author>chenweiye1</author><pubDate>Fri, 05 Feb 2021 21:44:34 +0800</pubDate><description><![CDATA[二分查找
一、二分查找的定义

二分查找也称折半查找（Binary Search），它是一种效率较高的查找方法。但是，折半查找要求线性表必须采用顺序存储结构，而且表中元素按关键字有序排列。

这是百度百科中对二分查找的定义。
二分查找的过程就是假设有一段单调递增序列，二分查找就是每次取序列数据的中间值 A ，将 A 与要找的值 B 作比较，然后，
1.A == B ，查找完毕；
2.A &lt; B ，就将单调序列的前一半舍去，以 A 为单调序列起点，重复上述操作；
3.A &gt; B ，就将单调序列的后]]></description><category></category></item><item><title><![CDATA[Dijkstra算法总结]]></title><link>https://blog.youkuaiyun.com/chenweiye1/article/details/113611054</link><guid>https://blog.youkuaiyun.com/chenweiye1/article/details/113611054</guid><author>chenweiye1</author><pubDate>Wed, 03 Feb 2021 20:39:24 +0800</pubDate><description><![CDATA[Dijkstra算法总结
一、Dijkstra 算法的定义
老规矩先引用一下百度百科上关于 Dijkstra 算法的说明。

迪杰斯特拉算法(Dijkstra)是由荷兰计算机科学家狄克斯特拉于1959 年提出的，因此又叫狄克斯特拉算法。是从一个顶点到其余各顶点的最短路径算法，解决的是有权图中最短路径问题。迪杰斯特拉算法主要特点是从起始点开始，采用贪心算法的策略，每次遍历到始点距离最近且未访问过的顶点的邻接节点，直到扩展到终点为止。

很显然，根据这段文字，我们可以了解到 Dijkstra 算法应用了贪心算法]]></description><category></category></item><item><title><![CDATA[拓扑排序]]></title><link>https://blog.youkuaiyun.com/chenweiye1/article/details/113563417</link><guid>https://blog.youkuaiyun.com/chenweiye1/article/details/113563417</guid><author>chenweiye1</author><pubDate>Tue, 02 Feb 2021 17:50:31 +0800</pubDate><description><![CDATA[拓扑排序
一、拓扑排序的定义：
先引用一段百度百科上对于拓扑排序的定义：

对一个有向无环图 ( Directed Acyclic Graph 简称 DAG ) G 进行拓扑排序，是将 G
中所有顶点排成一个线性序列，使得图中任意一对顶点 u 和 v ，若边 &lt; u , v &gt; ∈ E ( G )，则 u 在线性序列中出现在 v
之前。通常，这样的线性序列称为满足拓扑次序 ( Topological Order )
的序列，简称拓扑序列。简单的说，由某个集合上的一个偏序得到该集合上的一个全序，这]]></description><category></category></item><item><title><![CDATA[STL 中 empty() 的用法]]></title><link>https://blog.youkuaiyun.com/chenweiye1/article/details/113470473</link><guid>https://blog.youkuaiyun.com/chenweiye1/article/details/113470473</guid><author>chenweiye1</author><pubDate>Sun, 31 Jan 2021 13:57:43 +0800</pubDate><description><![CDATA[STL 中 empty() 的用法
#include&lt;cstdio&gt;
#include&lt;queue&gt;
using namespace std;
priority_queue&lt;int&gt; q;
int main(){
	q.push(1);
	printf("%d\n",q.empty());
	q.pop();
	printf("%d\n",q.empty());
	return 0;
}

输出：
0
1
empty() 用来判断队列是否为空，即是否没有元素。
队列为空时]]></description><category></category></item><item><title><![CDATA[2021-01-22总结]]></title><link>https://blog.youkuaiyun.com/chenweiye1/article/details/112995850</link><guid>https://blog.youkuaiyun.com/chenweiye1/article/details/112995850</guid><author>chenweiye1</author><pubDate>Fri, 22 Jan 2021 21:20:16 +0800</pubDate><description><![CDATA[2021-01-22总结
今天在家没事，下午用了不到三个小时把之前缺课落下的第二章—数据排序的题给做完了。
这九道题总体来说做的还是挺顺利的，除了第九题一开始忘记把横坐标减掉 i 之后再排一遍顺序，导致样例虽然过了，但是提交 luogu WA 了三个点，其他题做得还不错，就相当于复习了一遍各种排序方法（其实我就用到了sort，桶排和冒泡排序）。

1、明明的随机数（Noip2006）
【问题描述】
明明想在学校中请一些同学一起做一项问卷调查，为了实验的客观性，他先用计算机生成了N个1到
1000 之间的随机]]></description><category></category></item><item><title><![CDATA[2021-01-21总结]]></title><link>https://blog.youkuaiyun.com/chenweiye1/article/details/112970652</link><guid>https://blog.youkuaiyun.com/chenweiye1/article/details/112970652</guid><author>chenweiye1</author><pubDate>Thu, 21 Jan 2021 20:56:53 +0800</pubDate><description><![CDATA[2021-01-21总结
今天下午仔细看了一下 yjx 同学有关汉诺塔的总结，对汉诺塔操作的模拟和总结实在是太到位了。以下引用。

综上所述，对于一个N层的汉诺塔，先在B柱完成一个（N-1）层的汉诺塔，然后把n放在C柱，最后在B柱完成一个（N-1）层的汉诺塔，a[N]=2 * a[N-1]+1。（核心结论1）
为了使得总移动数尽可能少，要使得1到n-1这一堆的移动次数尽可能的少。因此如果有条件可以先移动大盘到目的地，这样有可能使n-1堆少移动一次，节省很多操作；但是如果操作大盘的过程中n-1层反复操作多组，]]></description><category></category></item><item><title><![CDATA[2021-01-20 总结]]></title><link>https://blog.youkuaiyun.com/chenweiye1/article/details/112907434</link><guid>https://blog.youkuaiyun.com/chenweiye1/article/details/112907434</guid><author>chenweiye1</author><pubDate>Wed, 20 Jan 2021 19:39:16 +0800</pubDate><description><![CDATA[2021-01-20 总结
今天的课收获颇多，对于我这么一个搜索学的一知半解的人来说，这样一节搜索的强化课对我实在是太有帮助了，虽然现在离精通还有很远，但是至少我已经能独立写出一些思维难度比较简单的搜索题了。总之，今天真是收获满满。
1.八皇后

题目描述 一个如下的 6×6的跳棋棋盘，有六个棋子被放置在棋盘上，使得每行、每列有且只有一个，每条对角线（包括两条主对角线的所有平行线）上至多有一个棋子。
上面的布局可以用序列 2 4 6 1 3 5 来描述，第 i 个数字表示在第 i 行的相应位置有一个棋子，如]]></description><category></category></item><item><title><![CDATA[2021-01-19 总结]]></title><link>https://blog.youkuaiyun.com/chenweiye1/article/details/112850002</link><guid>https://blog.youkuaiyun.com/chenweiye1/article/details/112850002</guid><author>chenweiye1</author><pubDate>Tue, 19 Jan 2021 20:02:32 +0800</pubDate><description><![CDATA[2021-01-19 总结
*1.、最大整数
【问题描述】
设有 n 个正整数（n≤20），将它们联接成一排，组成一个最大的多位整数。
例如：n=3 时，3 个整数 13，312，343 联接成的最大整数为：34331213
又如：n=4 时，4 个整数 7，13，4，246 联接成的最大整数为：7424613
【输入格式】
n
n 个数
【输出格式】
联接成的多位数
【输入样例】
3
13 312 343
【输出样例】
34331213
这道题呢，是之前做过的一道题，我也就没想那么多，用之前的贪心的方法写]]></description><category></category></item><item><title><![CDATA[2021-01-18 总结]]></title><link>https://blog.youkuaiyun.com/chenweiye1/article/details/112793069</link><guid>https://blog.youkuaiyun.com/chenweiye1/article/details/112793069</guid><author>chenweiye1</author><pubDate>Tue, 19 Jan 2021 19:04:36 +0800</pubDate><description><![CDATA[2021-01-18 IOI赛制比赛总结
1.背包问题
【问题描述】
简单的背包问题。设有一个背包，可以放入的重量为 s。现有 n 件物品，重量分别为 w1,w2…，wn，（1≤i≤n）
均为正整数，从 n 件物品中挑选若干件，使得放入背包的重量之和正好为 s。找到一组解即可。
【输入格式】
第一行是物品总件数和背包的载重量，第二行为各物品的重量。
【输出格式】
各所选物品的序号和重量。
【输入样例】
5 10
1 2 3 4 5
【输出样例】
number:1 weight:1
number:4 weig]]></description><category></category></item></channel></rss>