<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[泪无痕]]></title><description><![CDATA[先刷水题练练思维流畅    然后再刷难题]]></description><link>https://blog.youkuaiyun.com/u010841836</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; u010841836]]></copyright><item><title><![CDATA[UVA 10008 whats cryptanalysis 水题]]></title><link>https://blog.youkuaiyun.com/u010841836/article/details/50520340</link><guid>https://blog.youkuaiyun.com/u010841836/article/details/50520340</guid><author>u010841836</author><pubDate>Thu, 14 Jan 2016 21:35:09 +0800</pubDate><description><![CDATA[这道题如果用纯c代码和冒泡排序就可以解决了   冒泡排序是稳定排序  对于只有26个对象的数组排序也是非常的快  时间也许比快排 堆排 归并要小  毕竟排序数小
如果用到c++代码和排序算法来写就要复杂一些  排序算法也要考虑使用是稳定排序的算法   但是这完全是没必要的   因为我在学习c++所以蛋疼的用了c++
只对这道题来说  第一种方法最简单  代码也简洁   但是从长远来看  熟悉c]]></description><category></category></item><item><title><![CDATA[POJ 1004 Financial Management   cout格式输出控制练习]]></title><link>https://blog.youkuaiyun.com/u010841836/article/details/50507561</link><guid>https://blog.youkuaiyun.com/u010841836/article/details/50507561</guid><author>u010841836</author><pubDate>Tue, 12 Jan 2016 23:49:21 +0800</pubDate><description><![CDATA[C++与C风格的输出格式区别  
C++首先需要包含头文件 iomanip。 其次，再输出格式上可能要先把默认的输出格式改过来  例如，输出浮点型是科学计数法  改为精确到小数点后几位输出   需要用到  setf（）这个函数和一些参数。
#include
#include
#include


int main()
{

    using namespace std;
    float ]]></description><category></category></item><item><title><![CDATA[POJ 1003 Hangover  水题一道  练习C++编程]]></title><link>https://blog.youkuaiyun.com/u010841836/article/details/50494148</link><guid>https://blog.youkuaiyun.com/u010841836/article/details/50494148</guid><author>u010841836</author><pubDate>Sun, 10 Jan 2016 22:24:46 +0800</pubDate><description><![CDATA[#include#includeusing namespace std;const float minn = 1e-6;int main(){ float a; while(1) { cin>>a; if(fabs(a) < minn)break; float n = 1.0,sum = 0; while( sum-a < 0) { sum += 1.0/(n+1); n++; } cout<<i]]></description><category></category></item><item><title><![CDATA[C++编程学习之旅   由浅及深]]></title><link>https://blog.youkuaiyun.com/u010841836/article/details/50494117</link><guid>https://blog.youkuaiyun.com/u010841836/article/details/50494117</guid><author>u010841836</author><pubDate>Sun, 10 Jan 2016 22:22:38 +0800</pubDate><description><![CDATA[此文作为C++编程学习目录   以后更新
为什么要用学习C++编程
初始化新方法
new  delete
VECTOR
ARRAY]]></description><category></category></item><item><title><![CDATA[UVA 301 POJ 1040- Transportation  DFS  回溯]]></title><link>https://blog.youkuaiyun.com/u010841836/article/details/23936371</link><guid>https://blog.youkuaiyun.com/u010841836/article/details/23936371</guid><author>u010841836</author><pubDate>Thu, 17 Apr 2014 15:21:54 +0800</pubDate><description><![CDATA[这道题在UVA过了 但是在POJ上超时了  POJ1040  想一下P]]></description><category></category></item><item><title><![CDATA[UVA 208 - Firetruck   DFS  并查集剪枝]]></title><link>https://blog.youkuaiyun.com/u010841836/article/details/23848569</link><guid>https://blog.youkuaiyun.com/u010841836/article/details/23848569</guid><author>u010841836</author><pubDate>Wed, 16 Apr 2014 15:18:21 +0800</pubDate><description><![CDATA[21个节点   DFS搜索路径

每个点只可以访问一次 而且每条边只能访问一次  递归时改变状态  回溯时状态改回来

可能是图比较稀疏的原因   矩阵式的DFS  不加任何优化会超时  在我看来只有剪枝才可以过     边表的DFS不知道能不能过

看了下别人的思路  并查集找到能到fire的点  然后再进行回溯这样就能过了   至于大神们说的 tarjan  和  弗洛伊德算法 有]]></description><category></category></item><item><title><![CDATA[UVA 10012 - How Big Is It   暴力 回溯   全排列]]></title><link>https://blog.youkuaiyun.com/u010841836/article/details/23376147</link><guid>https://blog.youkuaiyun.com/u010841836/article/details/23376147</guid><author>u010841836</author><pubDate>Thu, 10 Apr 2014 19:15:36 +0800</pubDate><description><![CDATA[暴力解法
8个圆   全排列  一个个判断

回溯  也是全排列的思想  但是在进行排列的时候取一个最小的  如果还没有排完就已经比最小的还大  那么后面的所有以此为基础的答案都可以舍去
不用判断

上面的大体思路是正确的  但是忽略了一个问题  那就是排列中两个相邻的圆一定相切吗？  答案是否定的 

所以我们还需要考虑两个圆不相切的情况     那这样怎么才能确定当前圆应该放在]]></description><category></category></item><item><title><![CDATA[UVA 140 - Bandwidth  暴力  全排列 回溯]]></title><link>https://blog.youkuaiyun.com/u010841836/article/details/23362681</link><guid>https://blog.youkuaiyun.com/u010841836/article/details/23362681</guid><author>u010841836</author><pubDate>Thu, 10 Apr 2014 16:13:29 +0800</pubDate><description><![CDATA[8个点  全排列 一个个的判断]]></description><category></category></item><item><title><![CDATA[UVA 539 - The Settlers of Catan  暴力  全排列]]></title><link>https://blog.youkuaiyun.com/u010841836/article/details/23357077</link><guid>https://blog.youkuaiyun.com/u010841836/article/details/23357077</guid><author>u010841836</author><pubDate>Thu, 10 Apr 2014 15:20:54 +0800</pubDate><description><![CDATA[这道题目的意思就是在图上找到一条最长的路径


每条路径   不可能枚举25个数的全排列  肯定超时 


所以要在枚举的时候判断当前点和枚举的下一个点是否有边存在  且边没有被访问过




上面的思路好像有个bug    因为点是可以重复的  而且不知道这些点会出现几次   pass掉这种想法    
枚举点不行但是可以枚举边啊  边最多25条  哇 25！好大
但是]]></description><category></category></item><item><title><![CDATA[UVA 639 - Don't Get Rooked  暴力回溯]]></title><link>https://blog.youkuaiyun.com/u010841836/article/details/22929523</link><guid>https://blog.youkuaiyun.com/u010841836/article/details/22929523</guid><author>u010841836</author><pubDate>Fri, 04 Apr 2014 13:33:26 +0800</pubDate><description><![CDATA[枚举每个可以放的位置  是放还是不放   然后判断合法的方法能放多少个   比较保存最大的一个   0.029s




回溯   DFS判断每个位置  每个位置有3两种方法   放或者不放  不合法的情况就退回上一层  否者继续递归下去  直到判断每一个是放还是不放]]></description><category></category></item><item><title><![CDATA[UVA 10344 - 23 out of 5   全排列，3进制表示状态，回溯]]></title><link>https://blog.youkuaiyun.com/u010841836/article/details/22884837</link><guid>https://blog.youkuaiyun.com/u010841836/article/details/22884837</guid><author>u010841836</author><pubDate>Thu, 03 Apr 2014 17:20:51 +0800</pubDate><description><![CDATA[3个运算符  总共四个位置   一共3的4次方减1种方案  用3进制表示   5个数字全排列120种     80*120  暴力解决

不用回溯春暴力解决   用了C++的next-permutation  1.769s

自己写的C全排列   2.822s

继续想回溯算法]]></description><category></category></item><item><title><![CDATA[UVA 11205 - The broken pedometer   暴力  二进制表示状态]]></title><link>https://blog.youkuaiyun.com/u010841836/article/details/21641951</link><guid>https://blog.youkuaiyun.com/u010841836/article/details/21641951</guid><author>u010841836</author><pubDate>Thu, 20 Mar 2014 19:13:48 +0800</pubDate><description><![CDATA[用最少的LED灯区分 给出来的数字   LED灯最多15个   而数字最多100个


以最大来讨论   
每个LED灯的状态有两种  开或关    所以自然而然的就用0 1 来表示LED灯的状态
最多15个灯  2的15次方    最多100组需要判断的   暴力不会超时   导师需要注意的是  在每次循环判断完后  vis数组需要清零   但是不能全部清零
那样会超时   2的30]]></description><category></category></item><item><title><![CDATA[UVA  131 - The Psychic Poker Player  暴力不解释]]></title><link>https://blog.youkuaiyun.com/u010841836/article/details/21609619</link><guid>https://blog.youkuaiyun.com/u010841836/article/details/21609619</guid><author>u010841836</author><pubDate>Thu, 20 Mar 2014 12:42:21 +0800</pubDate><description><![CDATA[#include
#include
#include
using namespace std;

char t[][20] = {"straight-flush","four-of-a-kind","full-house","flush","straight"
                ,"three-of-a-kind","two-pairs","one-pair","highest-ca]]></description><category></category></item><item><title><![CDATA[UVA 11234 - Expressions   二叉树建树+BFS 层次遍历]]></title><link>https://blog.youkuaiyun.com/u010841836/article/details/18885997</link><guid>https://blog.youkuaiyun.com/u010841836/article/details/18885997</guid><author>u010841836</author><pubDate>Fri, 31 Jan 2014 01:04:46 +0800</pubDate><description><![CDATA[RT
给出了一个后缀表达式   要给出用队列表示时的答案     看simple output   知道输出时按照数的层数  从下到上从右到左一一输出的


#include
#include
#include
#include
#include
#include
#include
using namespace std;

int maxn = 10005;

typedef struc]]></description><category></category></item><item><title><![CDATA[POJ 1019  Number Sequence]]></title><link>https://blog.youkuaiyun.com/u010841836/article/details/17468641</link><guid>https://blog.youkuaiyun.com/u010841836/article/details/17468641</guid><author>u010841836</author><pubDate>Sat, 21 Dec 2013 17:06:13 +0800</pubDate><description><![CDATA[这道题想到思路就简单  想不到就悲剧了    第一次想到的算法  果断超时   后面想到分成多组来算  每组不超过1亿位   还是超时   最后看了下别人的思想   如下：
题意：  求数列的第N位是什么              不是数   是位      例如   12345678910  第十位是1   不是10
这个序列是这样的
1
12
123
1234
12345
可以]]></description><category></category></item><item><title><![CDATA[二分查找   递归实现  和  循环实现]]></title><link>https://blog.youkuaiyun.com/u010841836/article/details/15498097</link><guid>https://blog.youkuaiyun.com/u010841836/article/details/15498097</guid><author>u010841836</author><pubDate>Tue, 12 Nov 2013 10:05:33 +0800</pubDate><description><![CDATA[下面copy了百科对二分算法的描述





二分查找



编辑






二分查找又称折半查找，优点是比较次数少，查找速度快，平均性能好；其缺点是要求待查表为有序表，且插入删除困难。因此，折半查找方法适用于不经常变动而查找频繁的有序列表。首先，假设表中元素是按升序排列，将表中间位置记录的关键字与查找关键字比较，如果两者相等，则查找成功；否则利用中间位置记录将]]></description><category></category></item><item><title><![CDATA[HDU  3925  Substring]]></title><link>https://blog.youkuaiyun.com/u010841836/article/details/15378297</link><guid>https://blog.youkuaiyun.com/u010841836/article/details/15378297</guid><author>u010841836</author><pubDate>Mon, 11 Nov 2013 20:06:49 +0800</pubDate><description><![CDATA[题意：a串最少加上多少包含b串
解题思路：b从  x1   x10 x100   直到乘到比a的串长一位    x的这个就是b串后面补零就行  
然后  用b-a    如果b小于a  则在b的前面补1再减a   得到的数和minn比较   保存小的一个       例如    b = 4  a = 5;  b 
这里也许你会想到有前导零的情况    可以肯定输入数据是没有前导零的     ]]></description><category></category></item><item><title><![CDATA[POJ 1264   UVA  109  简单的计算几何]]></title><link>https://blog.youkuaiyun.com/u010841836/article/details/14648339</link><guid>https://blog.youkuaiyun.com/u010841836/article/details/14648339</guid><author>u010841836</author><pubDate>Sat, 09 Nov 2013 16:30:32 +0800</pubDate><description><![CDATA[简单的计算几何题目  
注意别重复判断    POJ G++提交的时候不能用%lf   用%f输出

#include
#include
#include
#include
#define eps 1e-8
using namespace std;

int T = 0;

struct Point
{
    int  x,y;
    Point (int x = 0,int y = 0]]></description><category></category></item><item><title><![CDATA[UVA 218 - Moth Eradication  计算几何   凸包]]></title><link>https://blog.youkuaiyun.com/u010841836/article/details/14453539</link><guid>https://blog.youkuaiyun.com/u010841836/article/details/14453539</guid><author>u010841836</author><pubDate>Thu, 07 Nov 2013 16:27:24 +0800</pubDate><description><![CDATA[凸包水题
求凸包   求边长

#include
#include
#include
#include
#define eps 1e-8
using namespace std;

struct Point
{
    double x,y;
    Point (double x = 0,double y = 0):x(x),y(y){}
};

typedef Point Vector;]]></description><category></category></item><item><title><![CDATA[NOJ 1616Music Notes   二分]]></title><link>https://blog.youkuaiyun.com/u010841836/article/details/14110371</link><guid>https://blog.youkuaiyun.com/u010841836/article/details/14110371</guid><author>u010841836</author><pubDate>Sun, 03 Nov 2013 22:18:25 +0800</pubDate><description><![CDATA[这个二分写得有点搓啊    有些数据都是没必要记录的

#include

int left,right;
struct  NUM
{
    int l,r,v;
}T[50005];

int binary_Q(int q,int left,int right)
{
    while(left < right)
    {
        int m = left + (right - ]]></description><category></category></item></channel></rss>