摘要: 二分查找。对数组每个V[i],在其中查找K-V[i],查找完成后修改v[i]避免重复输出 三个数的和为0,在前面代码基础上略作修改即可。 阅读全文
posted @ 2017-01-07 11:29 joeylee97 阅读(361) 评论(0) 推荐(0) 编辑
摘要: 先按起点排序,起点相同时终点大的在前面。排序后遍历,记录当前起点与前面最大终点之差和当前线段长度最小值,记录最优解。 为什么要这样排序?题目要求线段长度最长,就是尽可能让覆盖区域的起点很小,终点很大。可以在取最优解时先保证起点小,这样只需取当前能取到的最大终点得到解。 阅读全文
posted @ 2017-01-07 11:25 joeylee97 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 1283 最小周长 题目来源: Codility 基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题 收藏 关注 1283 最小周长 题目来源: Codility 基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题 1283 最小周长 题目 阅读全文
posted @ 2017-01-07 11:20 joeylee97 阅读(234) 评论(0) 推荐(0) 编辑
摘要: 球最少需要的能量,就是保证能量一直>=0,从头遍历取过程中能量最小值,绝对值为答案。 阅读全文
posted @ 2017-01-07 11:17 joeylee97 阅读(96) 评论(0) 推荐(0) 编辑
摘要: 模拟,在这里用栈模拟,一开始用了结构体数组从首尾两端分别遍历果断超时,复杂度n*n,用栈来模拟是线性复杂度。 阅读全文
posted @ 2017-01-05 18:51 joeylee97 阅读(126) 评论(0) 推荐(0) 编辑
摘要: #include #include #include #include #include using namespace std; #define MAXN 21 struct node { int x; int y; }; int n,m,g[MAXN][MAXN]; bool vis[MAXN][MAXN]; int x[4]={1,-1,0,0}; int y[4]={0,... 阅读全文
posted @ 2016-12-26 09:28 joeylee97 阅读(110) 评论(0) 推荐(0) 编辑
摘要: #include #include #include #include using namespace std; /* 枚举以不同湖结束的情况(路上时间固定),从其中每次选钓鱼量最大的(注意在这里不需要考虑顺序,因为迟早为轮到这个点) 在前面不同湖里钓鱼时间 int t[i][j] i为结束时在j点上钓鱼花费时间 ti[],di[],fi[] 枚举的时候要创建临时数组te... 阅读全文
posted @ 2016-12-22 15:38 joeylee97 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 直接用DFS深搜,检查了好久没能发现错误,贴上来以后慢慢看。。。 阅读全文
posted @ 2016-12-10 14:38 joeylee97 阅读(261) 评论(0) 推荐(0) 编辑
摘要: 问题描述 小明在玩一个电脑游戏,游戏在一个n×m的方格图上进行,小明控制的角色开始的时候站在第一行第一列,目标是前往第n行第m列。 方格图上有一些方格是始终安全的,有一些在一段时间是危险的,如果小明控制的角色到达一个方格的时候方格是危险的,则小明输掉了游戏,如果小明的角色到达了第n行第m列,则小明过 阅读全文
posted @ 2016-12-08 19:13 joeylee97 阅读(404) 评论(0) 推荐(0) 编辑
摘要: 题目不难,但是感觉很有意思。一开始忘了把调试信息注释掉,WA了两次。。。 问题描述 俄罗斯方块是俄罗斯人阿列克谢·帕基特诺夫发明的一款休闲游戏。 游戏在一个15行10列的方格图上进行,方格图上的每一个格子可能已经放置了方块,或者没有放置方块。每一轮,都会有一个新的由4个小方块组成的板块从方格图的上方 阅读全文
posted @ 2016-12-08 16:06 joeylee97 阅读(305) 评论(0) 推荐(0) 编辑