
枚举
Masker_43
这个作者很懒,什么都没留下…
展开
-
POJ 3295【Tautology】
题目链接 思路: 这类题一看就是要用栈啦,我的思路是读入 string 后从后往前操作。 如果遇到数字 (p、q、r、s、t) 就压栈,遇到运算符 (K、A、N、C、E) 就弹栈运算并且将子结果压栈。 但是我虽然想到了思路,却没敢写,因为我总觉得可以有更简单的方法判断是否恒真,但是一搜题解好像大家都是循环做的。还是要敢做,哪怕不够优呢。太没自信,这点我要检讨。 代码: 672K 0MS ...原创 2019-04-25 22:35:21 · 207 阅读 · 0 评论 -
【I - Fire Game】
思路: 想到了枚举,没敢写,不自信。 代码: 枚举 + bfs:156ms 228kB //156ms 228kB #include <iostream> #include <vector> #include <queue> #include <cstring> #define INF 0x3f3f3f3f using names...原创 2019-05-15 20:54:42 · 195 阅读 · 0 评论 -
【D - Fliptile】
思路: 本题看似搜索,实为枚举,关键在于题目要求输出反转串从小到大的解。 第一版代码:dfs,只不过将搜索改成从右下到左上的副对角线搜索。但是肯定是不对的,因为所有格子都是相关联的(这点在下文详述),根本就不能满足题意。 第二版代码,将所有搜索得到的解串存成优先队列,最后输出 Q.top()。理论上可行,但是会 TLE。注意:要求出任意解和所有解只差一行代码,即 if(ok) return ...原创 2019-05-13 13:49:03 · 909 阅读 · 0 评论 -
【K - Rochambeau】
思路: 带权并查集+枚举。 关键在题意: 若按照一般做法,当出现矛盾时完全无法判断是关系链上的哪一环导致出错,也就无法确定 judge 的身份。 枚举每一个人,认为此人是 judge 时,有关他的所有关系都是不可信的,需要跳过。 题目不仅要求出谁是 judge,还要求判断多少条关系后能够确认他是 judge,等价于能够判断所有其他人都不是 judge 的语句数量。 所以,EDGE 存边、枚举 ...原创 2019-07-04 19:39:08 · 165 阅读 · 0 评论