08 2016 档案
Unix Shell 程序设计 —— 正则表达式
摘要:参考:http://www.cnblogs.com/erichhuang/archive/2012/03/13/2394119.html 简介: 简单的说,正则表达式是一种可以用于模式匹配和替换的强有力的工具。我们可以在几乎所有的基于UNIX系统的工具中找到正则表达式的身影,例如,vi编辑器,Per 阅读全文
posted @ 2016-08-31 20:41 小小八 阅读(2664) 评论(0) 推荐(0)
Unix 初步(一)
摘要:1、Unix文件系统 Unix文件系统有三种文件类型:普通文件、目录文件和设备文件(将外部设备作为一种特殊的文件进行管理,实现输入输出统一而单纯的操作.) 2、Unix的网络功能 TCP/IP 3、root用户和普通用户 root:# 普通:$ 4、文件权限 阅读权r、写入权w、执行权x 七进制 7 阅读全文
posted @ 2016-08-31 19:45 小小八 阅读(390) 评论(0) 推荐(0)
CodeForces #369 div2 D Directed Roads DFS
摘要:题目链接:D Directed Roads 题意:给出n个点和n条边,n条边一定都是从1~n点出发的有向边。这个图被认为是有环的,现在问你有多少个边的set,满足对这个set里的所有边恰好反转一次(方向反转),使得这个图里没有环。 思路:感觉关键是,n个点n条边,且每个点的出度为1,所以图里一定没有 阅读全文
posted @ 2016-08-31 09:49 小小八 阅读(261) 评论(0) 推荐(0)
CodeForces #369 C. Coloring Trees DP
摘要:题目链接:C. Coloring Trees 题意:给出n棵树的颜色,有些树被染了,有些没有。现在让你把没被染色的树染色。使得beauty = k。问,最少使用的颜料是多少。 K:连续的颜色为一组,一共有多少组。 颜料用量:p[i][j]表示第i棵树用颜料j染色 需要p[i][j]颜料。 思路:DP 阅读全文
posted @ 2016-08-30 14:10 小小八 阅读(210) 评论(0) 推荐(0)
CodeForces #100 C 贪心+STL
摘要:题目链接:CodeForces #100 C 题意:现在给出n个snowball的半径,3个半径严格递增或递减的snowball,可以组成1个snowmen。问最多能组成多少个snowmen。并且按照半径递减的顺序输出每个snowmen的组成。 思路:嗯...每次都从前三个个数最多的snowball 阅读全文
posted @ 2016-08-18 19:01 小小八 阅读(320) 评论(0) 推荐(0)
URAL 2080 Wallet 莫队算法
摘要:题目链接:Wallet 题意:给出n张卡片,k次使用。要求每次使用的卡片都在最上面。首先希望你合理的安排每张卡片的初始位置,并且输出。然后,问每次使用完卡片之后插入的位置上面有几张卡片,才能使得每次使用的卡片都在最上面。 思路:初始位置很容易得到。每次插入卡片时上面的卡片数,就是该卡片两次使用之间有 阅读全文
posted @ 2016-08-18 15:07 小小八 阅读(328) 评论(0) 推荐(0)
CodeForces #367 div2 D Trie
摘要:题目链接:Vasiliy's Multiset 题意:这里有一个set容器,有三种操作,+ num, - num, ? num,分别代表往容器里加上num,或者拿走num,或着从容器里找一个数temp使得temp^num的值最大。输出这个最大值。 思路:对于XOR操作,一般都要拆位考虑,拆完之后用T 阅读全文
posted @ 2016-08-15 19:49 小小八 阅读(127) 评论(0) 推荐(0)
CodeForces #367 div2 C
摘要:题目链接: Hard problem 题意:每个字符串可以选择反转或者不反转,给出反转每个字符串的代价,问使最少的代价使得这个字符串序列成字典序。 dp[i][j] = x : 第一维是第i个字符串,第二维表示当前字符串是否反转。x表示当前状态下使前i个字符串成字典序的最小代价。 感觉可以做的dp, 阅读全文
posted @ 2016-08-12 15:30 小小八 阅读(177) 评论(0) 推荐(0)
二分搜索
摘要:最近好像高频遇见三类题: 利用C++ STL会炒鸡机智+优雅的模拟... 尺取法... 二分搜索... 二分搜索是O(log(n))的,然后,要求询问内容在区间内单调。 UVALive 7292 Refract Facts 如题,求角度。 关于double的二分,如果不加break条件会死循环,然后 阅读全文
posted @ 2016-08-10 00:50 小小八 阅读(239) 评论(0) 推荐(0)
UVALive 7297 Hounded by Indecision BFS
摘要:题目链接:Hounded by Indecision 题意:map中给出小偷的位置,警察的位置。警察有一只狗,开始的时候警察和狗一起行动,也就是看做一个格子,当警察遇见小偷走过的格子时,狗就会嗅到它的气味,以2倍的速度追捕小偷。现在,小偷希望知道自己是否有安全路线逃出去,以此决定是否要继续拿着偷的东 阅读全文
posted @ 2016-08-07 19:59 小小八 阅读(362) 评论(1) 推荐(0)
莫队算法
摘要:莫队算法是离线处理一类区间不修改查询类问题的算法。 如果你在知道了[L,R]的答案时,可以在O(1)的时间下得到[L,R-1]和[L,R+1]和[L-1,R]和[L+1,R]的答案的话,就可以使用莫队算法。时间复杂度大概是O(n^1.5)。 莫队算法就是在知道一个区间的ans时,暴力的转移到所有的相 阅读全文
posted @ 2016-08-07 14:08 小小八 阅读(373) 评论(0) 推荐(0)
CF #365 (Div. 2) D - Mishka and Interesting sum 离线树状数组
摘要:题目链接:CF #365 (Div. 2) D - Mishka and Interesting sum 题意:给出n个数和m个询问,(1 ≤ n, m ≤ 1 000 000) ,问在每个区间里所有出现偶数次的数异或的值。 思路:容易想到,把区间内的所有的数都异或得到的是出现奇数次的数的值,然后再 阅读全文
posted @ 2016-08-06 16:51 小小八 阅读(443) 评论(0) 推荐(0)
归并排序
摘要:归并排序完全遵循分治模式,直观上操作可分为: 分解:分解待排序的n个元素的序列各具有n/2个元素的两个子序列。 解决:使用归并排序递归的排序两个子序列。 合并:合并两个已排好序的子序列以产生已排序的答案。 当递归到序列长度为1时,递归回升,此时不需要做任何操作,因为长度为1的每个序列都已排好序。 归 阅读全文
posted @ 2016-08-04 22:17 小小八 阅读(273) 评论(0) 推荐(0)
C++ fstream stringstream
摘要:一、文件输入输出 C/C++ 输入: freopen("in.cpp", "r", stdin); fclose(stdin); 输出: freopen("in.cpp", "r", stdout); fclose(stdout); C++ 输入: ifstream cin("in.cpp"); c 阅读全文
posted @ 2016-08-03 20:15 小小八 阅读(1133) 评论(0) 推荐(0)
UVALive 6680 Join the Conversation
摘要:题意:conversion的定义是下一句提到上一句的人的名字。请你输出最长的对话的长度,及组成对话的序列号。 思路:动态规划的思想很容易想到,当前句子,根据所有提到的人的名字为结尾组成的对话长度来判断当前name的最长对话长度。每个名字需要记录它形成最长对话的长度及此时出现的行数。 想说的是,C++ 阅读全文
posted @ 2016-08-03 18:54 小小八 阅读(336) 评论(0) 推荐(0)
UVALive 6948 Jokewithpermutation dfs
摘要:题目链接:UVALive 6948 Jokewithpermutation 题意:给一串数字序列,没有空格,拆成从1到N的连续数列。 dfs. 可以计算出N的值,也可以直接检验当前数组是否合法。 dfs要优雅... 阅读全文
posted @ 2016-08-02 19:00 小小八 阅读(320) 评论(0) 推荐(0)