摘要:
题意:给定一个串数,表示一种密码锁,再给定一串密码,问你滑动最少的次数,把第一行变成第二行。 析:很简单么,反正只有0-9这个10个数字,那么就是把每一个数从正着滑和倒着滑中找出一个最小的即可,正着滑就是大数减小数,倒着就是小数+10-大数。 代码如下: 阅读全文
摘要:
题意:给定 n, t, c 和 n 个数,问你在这 n 个数中有多少连续的 c 个数,并且这个 c 个数不大于 t。 析:很简单么,是滑动窗口,从第一个开始遍历,如果找到 c 个数,那么让区间前端点加1,如果找不到,那么就区间前端等于后区间+1. 代码如下: 阅读全文
摘要:
题意:给定 n 个数,有正数和-1, -1表示罪犯,正数表示招了几个警察,一个警察只能看一个罪犯,并且要按顺序,问你有多少罪犯逃脱。 析:很简单么,从开始扫到最后,把是正数就加上,是-1判断剩余警察大于0,如果是就让警察数减1,如果不是答案加1. 代码如下: 阅读全文
摘要:
有时候用原版系统镜像安装windows系统时,会提示“windows无法安装到这个磁盘。选中的磁盘采用GPT分区形式”,导致安装失败,下面就来讲解一下如何解决。 1.在系统提示无法安装的那一步,按住“shift+f10”,呼出“cmd”命令符 2.输入:diskpart,回车 3.输入:list d 阅读全文
摘要:
题意:给定 n 数,让你交换最多1次,求满足 ai = i的元素个数。 析:很简单么,只要暴力一遍就OK了,先把符合的扫出来,然后再想,最多只能交换一次,也就是说最多也就是加两个,然后一个的判,注意数组越界。 代码如下: 阅读全文
摘要:
题意:给定 n 个数,让你找出一个排列满足每个数相邻作差之和最大,并且要求字典序最小。 析:这个表达式很简单,就是把重新组合一下,就成了x1-xn,那么很简单,x1是最大的,xn是最小的,中间排序就好。 代码如下: 阅读全文
摘要:
题意:有一堆数,然后有两个人轮流从中取出两个数,这两个数的差的绝对值不在这个集合,然后把这个数放进这个集合,如果哪个人不能拿了,就是输了,问你谁赢。 析:当时连题意都没看好,以为拿出两个数,就不放回了,如果好好分析第三组样例,就不会看成这样了。 思路应该是这样的,既然是拿了再放差的绝对值放进去,那么 阅读全文
摘要:
题意:给定 4n * 2 个坐标,分成 n组,让你判断,点绕点的最少次数使得四个点是一个正方形的顶点。 析:那么就一个一个的判断,n 很小,不会超时,四个点分别从不转然后转一次,转两次。。。转四次,就这样算下去,那么如何判断是不是正方形呢?这样判定就行,把每个边都求出来,然后判定, 这里肯定有四个边 阅读全文
摘要:
题意:给定 n 堆数,然后有 m 个话询问,问你在哪一堆里。 析:这个题是一个二分题,但是有一个函数,可以代替写二分,lower_bound. 代码如下: 阅读全文
摘要:
题意:给定一个键盘,然后一行字母,和一个字符,代表把那一行字母在键盘上左移还是右移一位。 析:没什么好说的,直接暴力就好。 代码如下: 阅读全文
摘要:
转载地址:http://www.cnblogs.com/linlf03/archive/2011/11/20/2256539.html 使用API写Windows程序 一 先来看个简单实例: #include "windows.h" int WINAPI WinMain (HINSTANCE hIn 阅读全文
摘要:
题意:给定一棵树中,让你计算它的直径,也就是两点间的最大距离。 析:就是一个树上DP,用两次BFS或都一次DFS就可以搞定。但两次的时间是一样的。 代码如下: 两次BFS: 阅读全文
摘要:
题意:给定一个图,问你有几个连通块。 析:不用说了,最简单的DFS。 代码如下: 阅读全文
摘要:
题意:给定 n 条边,判断是不是树。 析:水题,判断是不是树,首先是有没有环,这个可以用并查集来判断,然后就是边数等于顶点数减1. 代码如下: 阅读全文
摘要:
题意:给定一棵树,然后让你找出它的直径,也就是两点中的最远距离。 析:很明显这是一个树上DP,应该有三种方式,分别是两次DFS,两次BFS,和一次DFS,我只写了后两种。 代码如下: 两次BFS: 一次DFS: 阅读全文
摘要:
转载地址:http://www.cnblogs.com/celia01/archive/2012/07/30/2615842.html 树的直径:树中距离最远的两点间的距离。 下面说几道题: hdu 2196:对于树上(双向边)的每一个节点求出与其距离最远的点的距离。 这个主要用的思想是两次dfs: 阅读全文
摘要:
题意:一个家庭聚会,每个人都想送出礼物,送礼规则是, 一个人,先看名单列表,发现第一个祖先 就会送给他礼物,然后就不送了,如果他没找到礼物 他会伤心的离开聚会!告诉你m个祖先关系, 和每个人想给谁送!让你求出名单列表! 析:这个题,真是没想到啊,还是看的题解,首先要知道的是,如果自己和父结点送的人不 阅读全文
摘要:
今天在uva看到一个水题,分享一下。 题意:制定纳税的总额,有几个要求,如果第一个180000,不纳,下一个300000,纳10%,再一个400000,纳15%,再一个300000,纳20%,以后的纳25%,如果总额大于0但是不过2000,纳2000, 如果总金额不是整数,纳离它最近的且比它大的整数 阅读全文
摘要:
题意:给定 n 个按顺序的命令,但是可能有的命令不全,让你补全所有的命令,并且要求让总数最少。 析:没什么好说的,直接用优先队列模拟就行,insert,直接放入就行了,removeMin,就得判断一下队列是不是空的,然后再考虑getMin,这个是不是对应的值,如果队列中首元素比它大,那么就加上一个, 阅读全文
摘要:
题意:给定一棵树,每个叶子有一个权值,每条边也有一个权值,现在让你删最少的结点,使得从任何结点出发到另一个结点的边上权值和都小于两个结点的权值。 析:很明显是DFS,不过要想找出最少的结点可能不太容易,所以我们可以先找出剩下结点最多,那么用总数减去这个就好,那么怎么找哪些结点是剩下的呢?首先要知道, 阅读全文