摘要:
DFS超时,当时头脑混乱不会改成BFS。过了两天,思路清晰,一次AC,真爽。思路:用dp[x][y][p]表示走到(x,y)且剩余斗志为p的最少体力,bfs的过程中,只有满足边界条件并且下一步算出来的值要小于dp[next.x][next.y][next.p]时才把这个点放入队列。#include ... 阅读全文
摘要:
对每两个不认识的人连一条边,则此题可转化为二分图判定(用染色法。注意:二分图可有多个)。如果有一部分图判定为不是二分图,则输出“Poor wyh”。否则,分别累加每个二分图的最多的颜色数。#include #include #include #include #include #include #i... 阅读全文
摘要:
把串分成前后两半,前面的做暴力枚举,并把结果丢到集合里去,后面的也暴力枚举,并且每次的结果去集合里看有无出现过相同的.如果有那么异或后为0,就是符合题目要求的,选出包含字符串个数最多的!这样一优化,前后两个2^12+2^12,瞬间时间复杂度开方了!#include #include #include... 阅读全文
摘要:
本以为string会耗时,就用数组,结果老是WA,没了耐心找错误,就换成string,秒过!#include #include #include #include #include #include #include #include #include #include typedef long l... 阅读全文
摘要:
首先,直径小于草坪宽度的喷水器不选。然后,按喷水器能够覆盖草坪的矩形范围 转换成 区间覆盖问题。#include #include #include #include #include #include #include #include #include #include typedef long... 阅读全文
摘要:
给你n个国家,m条路线:u_i与v_i之间的距离w_i。输出从1号国家出发经过每个国家至少一次再回到1号国家的最短距离。【官方题解】:我们首先需要预处理出任意两个国家之间的最短距离,因为数据范围很小,所以直接用Floyd就行了。之后,我们用f[S][i]表示访问国家的情况为S,当前最后访问的一个国家... 阅读全文
摘要:
题目链接思路:对每一个格子进行处理:计算包含它的最大矩形。up[i][j]: 存储矩形的高;left[i][j]: 存储矩形的左边界的列号;right[i][j]:存储矩形的右边界的列号。面积 = up[i][j] * ( right[i][j] - left[i][j] +1 )。心得:即便是有... 阅读全文
摘要:
提交了7次,总算AC了。题目不难,就是判断下欧拉通路。注意细节。/*Status:ACTitle :The Necklace*/#include #include #include #include #include #include #include #include #include typed... 阅读全文
摘要:
The mook jongTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/65536 K (Java/Others)问题描述ZJiaQ为了强身健体,决定通过木人桩练习武术。ZJiaQ希望把木人桩摆在自家的那个由1*1的地砖铺成的1*... 阅读全文
摘要:
#include #include using namespace std;const int MAXN=10000000+5;char a[MAXN];int t;char b[3]={'w','y','h'};int main(){ scanf("%d",&t); getchar(); whil... 阅读全文