上一页 1 ··· 34 35 36 37 38 39 40 41 42 ··· 50 下一页
摘要: 题意:给定你长度为n的括号序列,动态对区间去反,赋值(括号),询问是否匹配,解题思路:这个题利用到了线段数求和的性质,对‘(’赋值为1,对 ‘)’括号赋值为-1,就转化为前缀和必须大于等于0且区间和等于0,根据这个判断即可。解题代码: 1 #include 2 #include 3 #include 4 #define maxn 100005 5 char str[maxn]; 6 struct node{ 7 int l, r, m ; 8 int sum , c , f; 9 }tree[maxn*4]; 10 int L(int c){ 11 ... 阅读全文
posted @ 2013-08-18 19:02 dark_dream 阅读(316) 评论(0) 推荐(0) 编辑
摘要: 题意:给定一个n面均匀的筛子,每个面都有一个值,另外有m面如果投到会有再投一次的机会(可以投无限此),问你他的概率是多少解题代码:这是一个递推关系式,设答案为ans 则每一面有1/n的几率,分开算期望,如果一个面是m中的一个 它的期望是 1/n(a[x] + ans),最后即可求得关系式解题代码: 1 // File Name: 4686.c 2 // Author: darkdream 3 // Created Time: 2013年08月17日 星期六 19时46分29秒 4 5 #include 6 #include 7 #include 8 #include 9 #include10. 阅读全文
posted @ 2013-08-17 20:00 dark_dream 阅读(414) 评论(0) 推荐(0) 编辑
摘要: 题意:给定你n个连续的问题和m个问题回答正确,然后有一个k的计数板,如果正确的问题到达k 计数板清0分数加倍,如果回答错误的话 计数板清零,不加分数,问你分数最小值为多少解题思路:比赛时没有看出这题水题的本质,对情况讨论的也不明显,所以现在才过,解题思路就是把不能回答错误而清零的那一部分放在前面,算分既可解题代码: 1 // Fie Name: c.c 2 // Author: darkdream 3 // Created Time: 2013年08月17日 星期六 00时47分02秒 4 5 #include 6 #include 7 #include 8 #include 9 #incl. 阅读全文
posted @ 2013-08-17 19:12 dark_dream 阅读(301) 评论(0) 推荐(0) 编辑
摘要: 1 long long pow(int n , int k) 2 { 3 long long ans = 1; 4 while(k) 5 { 6 if(k&1 ) 7 ans *= n ; 8 n*= n ; 9 k>>=1; 10 }11 return ans ;12 }View Code 阅读全文
posted @ 2013-08-17 18:22 dark_dream 阅读(160) 评论(0) 推荐(0) 编辑
摘要: http://blog.sina.com.cn/s/blog_a16fab3b01013d4l.htmlhttp://www.lihuoqing.cn/code/670.html 阅读全文
posted @ 2013-08-16 22:36 dark_dream 阅读(140) 评论(0) 推荐(0) 编辑
摘要: #pragma comment(linker,"/STACK:102400000,102400000") 阅读全文
posted @ 2013-08-15 15:56 dark_dream 阅读(306) 评论(0) 推荐(0) 编辑
摘要: 题意:给定一个二维平面,再给你n条垂直线条,如果有两条线段能用水平的线连接且不水平的线不接触其他线段,则说明这条两条线段可见,如果三条线段两两可见,则代表一个“三角形”,问给定线段集合中的“三角形”个数,解题思路:线段树区间覆盖加统计,要把区间变为点数,所以所有点的 y 都要 乘 2 。 不会stl的童鞋伤不起,用链表统计,更新,最后在暴力找个数。解题代码: 1 #include 2 #include 3 #include 4 #define maxn 8005 5 int hs[maxn]; 6 struct op 7 { 8 int y1,y2,x; 9... 阅读全文
posted @ 2013-08-14 12:37 dark_dream 阅读(302) 评论(0) 推荐(0) 编辑
摘要: 题意:题目真难懂 自行理解。。。解题思路:其实只要考虑两列就可以了,对于第一列都某个服务器,如果它坏了的话,就会有第二列的补上,所以我们只需要构造两列,第一列就按照1-n循环排,然后对于每个服务器,如果这个服务器坏了的话,从未排全的数开排,如果等于这个服务器编号,跳一个即可。。解题代码: 1 #include 2 #include 3 #include 4 int a[1000][1000]; 5 int ths[1000][1000]; 6 int temp[1000]; 7 int main() 8 { 9 int n , m;10 while(scanf("%d %d" 阅读全文
posted @ 2013-08-14 09:36 dark_dream 阅读(308) 评论(0) 推荐(0) 编辑
摘要: 题意:对空集S进行运算,问你S最后的区间表示解题思路:这题首先难下手的地方就是他的开区间与闭区间,这里我们要对数字乘以2(偶数代表端点,奇数代表区间),然后两个操作,覆盖和取反(自行思考),然后是5种情况,最后用hash记录覆盖区域输出,这题要注意的地方较多,在向下跟新的时候要有三种状态标记,和一种取反标记要注意,错了40次终于ac了,这题成功的把我poj的正确率拉低到了10% 以下。。解题代码: 1 #include 2 #include 3 #include 4 #define maxn 140000 5 struct node 6 { 7 int l ,r ,... 阅读全文
posted @ 2013-08-12 13:22 dark_dream 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 题意:对于一个数 ,给定n次位运算,每次位运算有不发生的概率,问你最后的期望值是多少。。。解题思路:对于每一位进行计算,那它就是线性结构,而非树形结构,大大简化了运算解题代码: 1 #include 2 #include 3 #include 4 #include 5 int num[205][22]; 6 double dp[3][25]; 7 char str[1005]; 8 void print() 9 { 10 for(int i = 1; i = 2) 31 { 32 t++ ; 33 ... 阅读全文
posted @ 2013-08-11 13:28 dark_dream 阅读(257) 评论(0) 推荐(0) 编辑
上一页 1 ··· 34 35 36 37 38 39 40 41 42 ··· 50 下一页