- 博客(15)
- 收藏
- 关注
原创 hdu_5536_多校联赛4_1010
啊啊啊,简直要崩溃,题意是说有很多大水滴,当大水滴尺寸>=5时,会分裂成四个小水滴,然后向上下左右四个方向射去,当碰到另一个大水滴时就会融合到里面去,问你T时刻的状态。 思路极为简单的模拟,只需要模拟小水滴的状态就行,但是当时比赛现场管理员有很多误导,导致很多人不能够正确理解题意,首先,R为X的范围,C为Y的范围,admin直接说反,爆WA,其次,当大水滴分裂之后,原地点的状态表述不明,既然SIZ
2015-07-31 22:27:59 551 1
原创 poj_1877
这个题坑极多,附代码和测试数据,如果测试数据都过了,基本上就能AC了,希望对大家有所帮助#include <stdio.h> #include <stdlib.h> #include <string.h> int cmp(const void*a, const void*b) { return *(int*)a - *(int*)b; } int main() { int m, n,
2015-07-27 23:51:26 776
原创 zoj_3888_7/27浙大月赛H
简单贪心,只需要维护每一个点可以到达之前的最小值和次小值。#include <cstdio> #include <iostream> #include <cstring> #include <algorithm> #include <set> #include <queue> #include <map> using namespace std; #define MAX(x,y) (((x)>(y)
2015-07-27 23:19:32 995
原创 zoj_3882_7/27浙大月赛B
这道题不得不说是一道水题,只要你看过刘汝佳的白书的话,相信秒杀还是没问题的,题意是A和B两个人玩游戏,有1~n一堆数,每个人轮流从中取走一个数,并把他和他的所有的约数擦去。擦去最后一个数的人赢,A先开始,问谁会赢。 分析:本题的结论有些出乎意料,除了n=0是先手必败之外,其他的情况都是先手必胜。证明如下。 如果后手能赢,也就是后手有必胜策略,使得先手无论去哪第一次取哪一个数,后手都能获得最后的胜
2015-07-27 23:14:48 663
原创 poj_1753_高斯消元
开心,总算过了,对于高斯消元的理解更深一步,这道题的重点在于,如果用高斯消元的话,最后一行是要枚举的,总共16种情况,因为不知道怎么枚举,当时卡了好久,其实在线性方程组中,我们可以当做缺少了四个方程,所以我们的过程就是枚举最后四个方程,然后一步一步往回带入。 其中要注意一点,就是最后的结果可以全是白面,也可以全是黑面,看了很多博客,说的解法都很麻烦,其实大可以不必,只要a数组加两列就行,将枚举的结果
2015-07-21 20:29:38 466
原创 poj_1681_高斯消元
这道题和之前的把那一道1222非常相似,只不过一定要注意一下对于无解的判断。/*######################################################################### # File Name: poj_1681.cpp # Author: CaoLei # Created Time: 2015/7/20 18:33:08 #########
2015-07-20 21:41:36 692
原创 poj_1222_高斯消元
第一次学习使用高斯消元,将灯板化为线性方程组,进行求解/*######################################################################### # File Name: poj_1222.cpp # Author: CaoLei # Created Time: 2015/7/20 15:48:04 ####################
2015-07-20 17:27:10 517
原创 zoj 3643 Keep Deleting
思路:KMP+堆栈,很巧妙的思路,用栈记录下每一次匹配成功时候的位置,当完全匹配成功的时候,就弹出相应程度的堆栈内容,原来一直错的地方在于,每次放到堆栈里的是陪陪失败后的位置,但是那样的话会有重复的情况,所以应该果断换一种算法。 /*######################################################################### # Fi
2015-07-15 21:01:37 517
原创 zoj 3640 Help Me Escape
比赛的时候因为害怕复杂度太高所以并没有用搜索,后来想想其实是可以的,但是一定要注意记忆化,要避免重复搜索的情况,感谢提供思路的kuangbin大神。 /*######################################################################### # File Name: h.cpp # Author: CaoLei # Created Ti
2015-07-15 20:57:49 533
原创 zoj 3639 Guess a Function
题意:原题目定义了四个函数,同时也给你了一组样例数据,由于函数中存在四个常量你并不知道,所以就需要你通过样例数据,推测出来。 思路:在这里,首先要感激猛犸学长提供的思路。 给出三个函数,分别是 g(x) = x xor (x / 2) h1(x) = x / m1 * m1 + (x + s1) % m1 h2(x) = x / m2 * m2 + (x + s2) % m2 数据给出
2015-07-15 20:54:48 598 1
原创 zoj 3635 Cinema in Akiba
裸线段树,水题1A之。 /*######################################################################### # File Name: c.cpp # Author: CaoLei # Created Time: 2015/7/13 14:15:38 ########################################
2015-07-15 20:43:59 384
原创 zoj 3633 Alice's present
题意:一条线段上有很多礼物,主人公会从右往左扫描,当碰到重复的时候,说明这是一种坏情况,现在给你很多区间查询,现在现在想问你这个区间里面有没有重复的数。 思路:首先想到的肯定是线段树,但是其实还有一一种更巧妙的办法,数组实现就行。我们用dis[e]记录e点左边的连续不重复最大区间是多少,这个建立的过程其实只需要O(nlogn)的时间就能建起来,其中判重的时候使用了map,这个非常巧妙。然后就方便
2015-07-15 20:34:40 381
原创 poj 3141 Distant Galaxy
这道题其实处理起复杂度有点高,我们采用的是枚举所有的矩形,判断落在边上的点有多少个,这道题我们看到坐标会很大,所以离散化是必不可少的,离散化之后,地图就会被划为100*100大小的,就可以方便操作了。首先要进行一次初始化,co[k][j][i][0]中存的是第K行的第j列到第i列中的点的个数,同理,co[k][j][i][1]中存的是第列中第j行到第i行的线段上点的个数。 之后我采用的是四层循环
2015-07-15 20:30:44 639
原创 poj 3138 ACM Team Selection
这是一道简单的水题,难度不大,只要大家仔细些就行 /*######################################################################### # File Name: a.cpp # Author: CaoLei # Created Time: 2015/7/15 10:06:14 #######################
2015-07-15 20:20:10 584
原创 2015上海邀请赛——Game
/*########################################################################## File Name: game.cpp# Author: CaoLei# Created Time: 2015/7/11 10:39:37######################################################
2015-07-11 15:06:05 496
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人