<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[den11551的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/den11551</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; den11551]]></copyright><item><title><![CDATA[面试题之排序总结]]></title><link>https://blog.youkuaiyun.com/den11551/article/details/101328794</link><guid>https://blog.youkuaiyun.com/den11551/article/details/101328794</guid><author>den11551</author><pubDate>Tue, 24 Oct 2017 20:20:00 +0800</pubDate><description><![CDATA[面试题之排序总结
插入排序
分析：　插入排序就是通过数字插入有序数组的方式进行排序的， 代码简单， 且易理解。时间复杂度O(N*N)
代码如下：
template &lt;typename T&gt;
void InsertSort(vector&lt;T&gt;&amp; array)
{
    for(int i=0; i&lt;array.size(); ++ i)
    {
...]]></description><category></category></item><item><title><![CDATA[面试题链表总结]]></title><link>https://blog.youkuaiyun.com/den11551/article/details/101328796</link><guid>https://blog.youkuaiyun.com/den11551/article/details/101328796</guid><author>den11551</author><pubDate>Thu, 19 Oct 2017 22:16:00 +0800</pubDate><description><![CDATA[面试题链表总结
链表定义为：
struct Node
{
    Node():next(nullptr) {};
    Node(int val): value(val), next(nullptr){};
    int value;
    node *next;
}
规定错误处理方式：

如果返回值为指针，返回nullptr
如果返回值为数字，返回为 -１

O(1)删除链表中...]]></description><category></category></item><item><title><![CDATA[微软大楼设计方案(中等)（2017 计蒜之道 初赛 第六场）]]></title><link>https://blog.youkuaiyun.com/den11551/article/details/101328792</link><guid>https://blog.youkuaiyun.com/den11551/article/details/101328792</guid><author>den11551</author><pubDate>Mon, 05 Jun 2017 14:39:00 +0800</pubDate><description><![CDATA[题目链接：https://nanti.jisuanke.com/t/15772
如果查两个核心部门的最短距离m，需要一下步骤

首先需要两个核心部门所在大楼之间的最低楼高S是多少
然后在算出两个核心部门所在大楼的最低楼层T是多少
然后就可以分为两种情况来讨论了
1: S &gt; T, 那么m为两个核心部门所在大楼的楼距加上两个核心部门的层距。
2：S &lt;= T, 那么m为两个核心...]]></description><category></category></item><item><title><![CDATA[1131 - 喵哈哈村的几何大师╰☆莣メ誋こ月(“玲珑杯”线上赛 Round #15 河南专场)...]]></title><link>https://blog.youkuaiyun.com/den11551/article/details/101328793</link><guid>https://blog.youkuaiyun.com/den11551/article/details/101328793</guid><author>den11551</author><pubDate>Mon, 05 Jun 2017 14:24:00 +0800</pubDate><description><![CDATA[题目链接：http://ifrog.cc/acm/problem/1131
做这个题的时候真的是。。。 数学忘完了， 失了智；
还是一位学弟的思路。
设置等腰三角形的下边长为1，其他的边都可以根据正余弦公式得出近似精确的长度。然后在根据正余弦公式算出所求角的大小。
代码如下：
#include&lt;bits/stdc++.h&gt;
using namespace std;
doubl...]]></description><category></category></item><item><title><![CDATA[1129 - 喵哈哈村的战斗魔法师丶坏坏い月(“玲珑杯”线上赛 Round #15 河南专场)...]]></title><link>https://blog.youkuaiyun.com/den11551/article/details/101328791</link><guid>https://blog.youkuaiyun.com/den11551/article/details/101328791</guid><author>den11551</author><pubDate>Mon, 05 Jun 2017 14:19:00 +0800</pubDate><description><![CDATA[题目链接：http://ifrog.cc/acm/problem/1129
思路就是用线段树查找最左边第一个大于等于v的数，然后返回线段树下表即可。
代码如下：
#include&lt;bits/stdc++.h&gt;
using namespace std;

struct node
{
    int l, r;
    long long x, add;
};

node tre...]]></description><category></category></item><item><title><![CDATA[1128 - 咸鱼拷问(“玲珑杯”线上赛 Round #15 河南专场)]]></title><link>https://blog.youkuaiyun.com/den11551/article/details/101328790</link><guid>https://blog.youkuaiyun.com/den11551/article/details/101328790</guid><author>den11551</author><pubDate>Mon, 05 Jun 2017 14:14:00 +0800</pubDate><description><![CDATA[题目链接：http://ifrog.cc/acm/problem/1128
思路有两种：

线段树查区间最小值和最大值
RMQ查区间最小值和最大值

线段树代码：
#include&lt;bits/stdc++.h&gt;
using namespace std;

const long long INF = 0x3f3f3f3f;
long long n;
long long a[10...]]></description><category></category></item><item><title><![CDATA[1127 咸鱼文章(“玲珑杯”线上赛 Round #15 河南专场)]]></title><link>https://blog.youkuaiyun.com/den11551/article/details/101328788</link><guid>https://blog.youkuaiyun.com/den11551/article/details/101328788</guid><author>den11551</author><pubDate>Mon, 05 Jun 2017 13:38:00 +0800</pubDate><description><![CDATA[题目链接：http://ifrog.cc/acm/problem/1127
就是将单词翻转一下， 没什么可写的， 代码如下：
#include&lt;bits/stdc++.h&gt;
using namespace std;

string str;

bool judge(char ch)
{
    if(ch &gt;= 'a' &amp;&amp; ch &lt;= 'z')
...]]></description><category></category></item><item><title><![CDATA[1126 - 咸鱼旅行(“玲珑杯”线上赛 Round #15 河南专场)]]></title><link>https://blog.youkuaiyun.com/den11551/article/details/101328789</link><guid>https://blog.youkuaiyun.com/den11551/article/details/101328789</guid><author>den11551</author><pubDate>Mon, 05 Jun 2017 13:34:00 +0800</pubDate><description><![CDATA[题目链接：http://ifrog.cc/acm/problem/1126
两种思路：

1.用kruskal求这个图的最小生成树，由于kruskal算法先添加边权小的边，然后添加边权大的边。由这个性质可以知道，每添加完边r，如果s，t由不在一个树上两个点变为在同一个树上的两个点，那么这个边就是s，t路径上的最大值。即为答案。
2.用dijkstra算法求两点间的最短路。更新方式换一下就...]]></description><category></category></item><item><title><![CDATA[1125 咸鱼商店(“玲珑杯”线上赛 Round #15 河南专场)]]></title><link>https://blog.youkuaiyun.com/den11551/article/details/101328786</link><guid>https://blog.youkuaiyun.com/den11551/article/details/101328786</guid><author>den11551</author><pubDate>Wed, 31 May 2017 16:17:00 +0800</pubDate><description><![CDATA[题目链接：http://ifrog.cc/acm/problem/1125
思路就是二分最大值然后用O1背包判断就好了
代码如下：
#include&lt;bits/stdc++.h&gt;
using namespace std;

int s[1007], v[1007];
int dp[1000007];
int n, m, k;
bool judge(int x)
{
    m...]]></description><category></category></item><item><title><![CDATA[1124 咸鱼魔法记(“玲珑杯”线上赛 Round #15 河南专场)]]></title><link>https://blog.youkuaiyun.com/den11551/article/details/101328787</link><guid>https://blog.youkuaiyun.com/den11551/article/details/101328787</guid><author>den11551</author><pubDate>Wed, 31 May 2017 16:12:00 +0800</pubDate><description><![CDATA[题目链接：http://ifrog.cc/acm/problem/1124
这道题两种思路

1.二分答案加O(n)判断
2.直接O(n)尺取法，尺取出最大答案

二分代码：
#include&lt;bits/stdc++.h&gt;
using namespace std;

int arr[1000007];
int n, k;

bool judge(int x)
{
    in...]]></description><category></category></item><item><title><![CDATA[1121 Reverse the lights(“玲珑杯”线上赛 Round #15 河南专场)]]></title><link>https://blog.youkuaiyun.com/den11551/article/details/101328784</link><guid>https://blog.youkuaiyun.com/den11551/article/details/101328784</guid><author>den11551</author><pubDate>Wed, 31 May 2017 15:30:00 +0800</pubDate><description><![CDATA[题目链接：http://ifrog.cc/acm/problem/1121
这道题的思路就是他总共只有k+1个状态，然后枚举所有状态，满足所有灯亮的条件就更新答案。
代码如下：
#include&lt;bits/stdc++.h&gt;
using namespace std;

int n, k;
int a[10007];

int main()
{
    while(scanf(...]]></description><category></category></item><item><title><![CDATA[LightOJ 1055 - Going Together]]></title><link>https://blog.youkuaiyun.com/den11551/article/details/101328785</link><guid>https://blog.youkuaiyun.com/den11551/article/details/101328785</guid><author>den11551</author><pubDate>Mon, 22 May 2017 19:56:00 +0800</pubDate><description><![CDATA[You are playing a computer game in which three robots (Aneed, Ben and Cindy) are trapped in a labyrinth. Initially all three are situated in three different locations in the maze. There are three...]]></description><category></category></item><item><title><![CDATA[Light OJ 1054 - Efficient Pseudo Code]]></title><link>https://blog.youkuaiyun.com/den11551/article/details/101328783</link><guid>https://blog.youkuaiyun.com/den11551/article/details/101328783</guid><author>den11551</author><pubDate>Sat, 13 May 2017 23:55:00 +0800</pubDate><description><![CDATA[Sometimes it's quite useful to write pseudo codes for problems. Actually you can write the necessary steps to solve a particular problem. In this problem you are given a pseudo code to solve a pr...]]></description><category></category></item><item><title><![CDATA[LightOJ 1053 - Higher Math]]></title><link>https://blog.youkuaiyun.com/den11551/article/details/101328782</link><guid>https://blog.youkuaiyun.com/den11551/article/details/101328782</guid><author>den11551</author><pubDate>Sat, 13 May 2017 16:59:00 +0800</pubDate><description><![CDATA[You are building a house. You'd prefer if all the walls have a precise right angle relative to the ground, but you have no device to measure angles. A friend says he has a great idea how you coul...]]></description><category></category></item><item><title><![CDATA[LightOJ 1052 - String Growth]]></title><link>https://blog.youkuaiyun.com/den11551/article/details/101328780</link><guid>https://blog.youkuaiyun.com/den11551/article/details/101328780</guid><author>den11551</author><pubDate>Sat, 13 May 2017 16:44:00 +0800</pubDate><description><![CDATA[Zibon just started his courses in Computer science. After having some lectures on programming courses he fell in love with strings. He started to play with strings and experiments on them. One da...]]></description><category></category></item><item><title><![CDATA[4512 吉哥系列故事——完美队形I(LCIS)]]></title><link>https://blog.youkuaiyun.com/den11551/article/details/101328781</link><guid>https://blog.youkuaiyun.com/den11551/article/details/101328781</guid><author>den11551</author><pubDate>Thu, 04 May 2017 21:41:00 +0800</pubDate><description><![CDATA[吉哥这几天对队形比较感兴趣。
　　有一天，有n个人按顺序站在他的面前，他们的身高分别是h11, h22 ... hnn，吉哥希望从中挑出一些人，让这些人形成一个新的队形，新的队形若满足以下三点要求，则称之为完美队形：
　　
　　1、挑出的人保持他们在原队形的相对顺序不变；
　　2、左右对称，假设有m个人形成新的队形，则第1个人和第m个人身高相同，第2个人和第m-1个人身高相同，依此类推，...]]></description><category></category></item><item><title><![CDATA[ZOJ 2432-Greatest Common Increasing Subsequence]]></title><link>https://blog.youkuaiyun.com/den11551/article/details/101328778</link><guid>https://blog.youkuaiyun.com/den11551/article/details/101328778</guid><author>den11551</author><pubDate>Thu, 04 May 2017 11:46:00 +0800</pubDate><description><![CDATA[You are given two sequences of integer numbers. Write a program to determine their common increasing subsequence of maximal possible length.
Sequence S1, S2, ..., SN of length N is called an incr...]]></description><category></category></item><item><title><![CDATA[病毒 （湖南省第八届大学生计算机程序设计竞赛）]]></title><link>https://blog.youkuaiyun.com/den11551/article/details/101328779</link><guid>https://blog.youkuaiyun.com/den11551/article/details/101328779</guid><author>den11551</author><pubDate>Tue, 02 May 2017 21:02:00 +0800</pubDate><description><![CDATA[Description
你有一个日志文件，里面记录着各种系统事件的详细信息。自然的，事件的时间戳按照严格递增顺序排列（不会有两个事件在完全相同的时刻发生）。
遗憾的是，你的系统被病毒感染了，日志文件中混入了病毒生成的随机伪事件（但真实事件的相对顺序保持不变）。备份的日志文件也被感染了，但由于病毒采用的随机感染方法，主日志文件和备份日志文件在感染后可能会变得不一样。
给出被感染的主日志和备...]]></description><category></category></item><item><title><![CDATA[1328 台球碰撞 （湖南省第六届大学生计算机程序设计竞赛）]]></title><link>https://blog.youkuaiyun.com/den11551/article/details/101328665</link><guid>https://blog.youkuaiyun.com/den11551/article/details/101328665</guid><author>den11551</author><pubDate>Tue, 02 May 2017 12:47:00 +0800</pubDate><description><![CDATA[Description
在平面直角坐标系下，台球桌是一个左下角在(0,0)，右上角在(L,W)的矩形。有一个球心在(x,y)，半径为R的圆形母球放在台球桌上（整个球都在台球桌内）。受撞击后，球沿极角为a的射线（即：x正半轴逆时针旋转到此射线的角度为a）飞出，每次碰到球桌时均发生完全弹性碰撞（球的速率不变，反射角等于入射角）。

如果球的速率为v，s个时间单位之后球心在什么地方？
Inpu...]]></description><category></category></item><item><title><![CDATA[zzuli 1332 内部收益率 （湖南省第六届大学生计算机程序设计竞赛）]]></title><link>https://blog.youkuaiyun.com/den11551/article/details/101328663</link><guid>https://blog.youkuaiyun.com/den11551/article/details/101328663</guid><author>den11551</author><pubDate>Mon, 01 May 2017 20:02:00 +0800</pubDate><description><![CDATA[在金融中，我们有时会用内部收益率IRR来评价项目的投资财务效益，它等于使得投资净现值NPV等于0的贴现率。换句话说，给定项目的期数T、初始现金流CF0和项目各期的现金流CF1, CF2, ...，CFT，IRR是下面方程的解：

为了简单起见，本题假定：除了项目启动时有一笔投入（即初始现金流CF0 &lt; 0）之外，其余各期均能赚钱（即对于所有i=1,2,...,T，CFi &gt; ...]]></description><category></category></item></channel></rss>