上一页 1 ··· 27 28 29 30 31 32 33 34 35 ··· 46 下一页
摘要: 题目大意就是给定n个点,然后问你这n个点可以构成多少个矩形(这里每个矩形都是不一样的,即构成矩形的4个点不是完全相同)。做法就是把这n个点能构成的全部对角线都求出来,记录每条对角线的长度和中点坐标,假如枚举到一条... 阅读全文
posted @ 2018-08-08 14:47 eason99 阅读(75) 评论(0) 推荐(0) 编辑
摘要: 这题是贪心做的,题目要求对序列里的每个数,找另外一个数使得这2个数和的模最大,总共有2种情况1.a[i]+a[j]=p 由a[i]+a[j]>=a[i]+a[k]-p ,所以在a[j]存在的时候考虑前一种情况就可... 阅读全文
posted @ 2018-08-08 11:05 eason99 阅读(85) 评论(0) 推荐(0) 编辑
摘要: 这题是贪心做的,题目要求对序列里的每个数,找另外一个数使得这2个数和的模最大,总共有2种情况1.a[i]+a[j]=p 由a[i]+a[j]>=a[i]+a[k]-p ,所以在a[j]存在的时候考虑前一种情况就可... 阅读全文
posted @ 2018-08-08 11:05 eason99 阅读(96) 评论(0) 推荐(0) 编辑
摘要: 这题的存图方式很特殊,图是1e9*1e9的矩阵,用邻接矩阵存会爆,所以要用map容器存,可以走的点的坐标映射为-1即可,然后从起点开始bfs。顺便学了下pair的用法#includeusing namespa... 阅读全文
posted @ 2018-08-07 22:49 eason99 阅读(42) 评论(0) 推荐(0) 编辑
摘要: 这题的存图方式很特殊,图是1e9*1e9的矩阵,用邻接矩阵存会爆,所以要用map容器存,可以走的点的坐标映射为-1即可,然后从起点开始bfs。顺便学了下pair的用法#includeusing namespa... 阅读全文
posted @ 2018-08-07 22:49 eason99 阅读(55) 评论(0) 推荐(0) 编辑
摘要: 这里v是所选1到v这个序列的最大值,然后要求最小值,就要想到最大值最小化,就要用二分搜素#includeusing namespace std;#define ll long long#define inf 0x... 阅读全文
posted @ 2018-08-06 20:00 eason99 阅读(86) 评论(0) 推荐(0) 编辑
摘要: 这里v是所选1到v这个序列的最大值,然后要求最小值,就要想到最大值最小化,就要用二分搜素#includeusing namespace std;#define ll long long#define inf 0x... 阅读全文
posted @ 2018-08-06 20:00 eason99 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 思路就是二分枚举起点到达终点能携带的最多财宝数量,原本的spfa是在dis[v]>dis[u]+w时就松弛起点到v点距离,但是这里加了一个条件要携带值为mid的财宝,所以还要判断一下这条边是否可以携带mid财宝... 阅读全文
posted @ 2018-08-06 18:51 eason99 阅读(64) 评论(0) 推荐(0) 编辑
摘要: 思路就是二分枚举起点到达终点能携带的最多财宝数量,原本的spfa是在dis[v]>dis[u]+w时就松弛起点到v点距离,但是这里加了一个条件要携带值为mid的财宝,所以还要判断一下这条边是否可以携带mid财宝... 阅读全文
posted @ 2018-08-06 18:51 eason99 阅读(73) 评论(0) 推荐(0) 编辑
摘要: 思路: 标记每个字符串前面的子串,如果一个字符串a,前面一个是字符串b,b是a的子串,然后就继续往前找,找到字符串c,然后 发现字符串c被标记了,说明c是b的子串,那么c必是a的子串,也可以这样理解如果b是a... 阅读全文
posted @ 2018-08-06 15:24 eason99 阅读(60) 评论(0) 推荐(0) 编辑
上一页 1 ··· 27 28 29 30 31 32 33 34 35 ··· 46 下一页