摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4000题目大意:给出n个数,求(x<z<y)的次数 。(x,y,z一次先后出现)解题思路:题目数据量很大,暴力肯定不行的。设现在出现的位置为x,后面比它大的数有s个。s个选两个(y,z)有s*(s-1)/2种。此时yz无序。然后按题目要求x<z<y,所以还要把x<y<z除掉。 1 #include <iostream> 2 #include <cstdio> 3 #include <algorithm> 4 #include & 阅读全文
posted @ 2012-11-07 23:25 Mr. Ant 阅读(402) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1541题目大意: 开始输入一个n(表示有n颗星星)。接下来n行,每行输入一个x,y,代表星星的坐标,注意y是递增输入。求各阶段星星的等级(阶段分为0~n-1)有多少,星星等级数计算方法为本星星左下角的有的星星个数。 1 #include <iostream> 2 #include <cstdio> 3 #include <algorithm> 4 #include <cstring> 5 using namespace std; 6 7 const i 阅读全文
posted @ 2012-11-07 21:46 Mr. Ant 阅读(1351) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.timus.ru/problem.aspx?space=1&num=1260题目大意:有n个数1—n,将他们排成一列。最左边必须是1,后面排列的数字和与他们它们相邻的数字只差不能超过2,求有多少中排列方式。解题思路:一开始看到这题,才55个点,果断dfs,结果TLE。不过至少答案是正确的,然后把答案给记录起来,仔细一分析,发现有规律可寻,打表,果断过了。规律递推式:dp[n]=dp[n-1]+dp[n-3]+1。搜狗一下发现别人此题写的是DP,囧。然后又思考了一下,果然如此。n个人时求dp[n]。第2个位置放2时有dp[n-1]种;第2个位置放3,第3个 阅读全文
posted @ 2012-11-07 15:55 Mr. Ant 阅读(586) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3183题目大意:给你一串数字,要你删去n个数字,使得删去n个数字后数值最小。解题思路: 蛋疼的水题,搞了我一天。开始是暴力模拟,各种测试对但就是过不了。所以换了个写法。 思路主要是这样的: 因为需要你删除m个数使得结果最小,所以每次对字符串进行一次遍历,从前往后,只要a[i]>a[j] (j的位置为i后面未标记的第一个) 则对a[i]进行一次标记(赋赋值)将其除外,进行n次遍历,这样就删除了n个数字。因为删除的都是和后面比较相比下大的,所得结果当然就最小了。 1 #include <io 阅读全文
posted @ 2012-11-07 00:18 Mr. Ant 阅读(475) 评论(0) 推荐(0) 编辑