模拟
文章平均质量分 71
BraketBN
这个作者很懒,什么都没留下…
展开
-
【BZOJ1033】[ZJOI2008]杀蚂蚁antbuster【模拟】
(´;ω;`) 有以下几点要注意: 1,蚂蚁不是质点。 2,蚂蚁的直径是1,不是半径是1。 3,给蚂蚁按age排序的时候,不要忘了target也得跟着变。 4,过早优化就是死,直接维护信息素的值就好了,每回合都O(nm)减一次,不要想着用时间戳。 5,蚂蚁上次移动位置的更新要注意放对位置,因为下面可能还有check相邻位置能不能走。 6,注意target的更新位置。 7,炮原创 2016-03-06 14:07:04 · 1797 阅读 · 0 评论 -
【SPOJ-PALIN】The Next Palindrome【模拟】
题意: 给出一个数,输出比这个数大的最小的回文数。 参照了http://blog.csdn.net/sunacmer/article/details/7399693 #include #include const int maxn = 1000005; int n, num[maxn]; char str[maxn]; inline bool cmp() { fo原创 2016-02-25 16:46:48 · 481 阅读 · 0 评论 -
【BZOJ1561】[JSOI2009]去括号【表达式相关】
【题目链接】 一开始按照判断括号是否可以去掉的方法写,对着数据调了无数个小时,也就只过了一个点。 后来问Claris(%%%%)要了代码,发现原来还可以这么搞。 先用栈处理出每个左或右括号对应的另一个右或左括号的下标。 然后求每个运算符的优先级。 具体是这样的: (1)定义一个临时变量j,表示当前位置的优先级,然后遍历表达式,初始j为1。 (2)进入一个括号j加2。(原创 2016-04-15 22:22:00 · 960 阅读 · 0 评论 -
【SPOJ-ARTHEVAL】Arithmetic Evaluation【表达式求值】
题目将难度降低了。 从左到右计算就好,不用在乎四则运算法则。 开一个数字栈,一个符号栈。 遇到数字,直接进数字栈。 遇到左括号,直接进符号栈。 遇到+-*号,如果符号栈顶元素不是左括号,那么先update(把符号栈顶元素取出来,把数字栈顶两个数字取出来,算完把结果放回数字栈),然后再把符号放到符号栈。 遇到右括号,一直update,直到遇到左括号,然后把左括号pop掉。原创 2016-02-18 22:52:59 · 514 阅读 · 0 评论 -
【BZOJ3671】[Noi2014]随机数生成器【模拟】【贪心】【卡空间】
【题目链接】 一眼模拟+贪心,算了算复杂度,好像不太对呀... 大概是O(n * m + Q + n + m + 1 + n * m)。。 嘿嘿嘿。 /* Telekinetic Forest Guard */ #include #include #include using namespace std; typedef long long LL; const int原创 2016-05-11 17:16:47 · 523 阅读 · 0 评论