07 2017 档案

PAT甲级1026. Table Tennis
摘要:PAT甲级1026. Table Tennis 题意: 乒乓球俱乐部有N张桌子供公众使用。表的编号从1到N.对于任何一对玩家,如果有一些表在到达时打开,它们将被分配给具有最小数字的可用表。如果所有的表被占用,他们将不得不等待排队。 假设每对玩家可以玩2个小时以上。 你的工作是计算每个人在排队等候的时 阅读全文

posted @ 2017-07-31 21:07 炮二平五 阅读(502) 评论(0) 推荐(0)

leetcode weekly contest 43
摘要:leetcode weekly contest 43 leetcode649. Dota2 Senate "leetcode649.Dota2 Senate" 思路: 模拟规则round by round。 阅读全文

posted @ 2017-07-30 16:42 炮二平五 阅读(490) 评论(0) 推荐(0)

hihocoder编程收割赛20
摘要:hihocoder编程收割赛20 hihocoder1542 : 无根数变有根树 "hihocoder1542" 思路: 树的遍历 ac代码: // hihocompete20_01.cpp : 定义控制台应用程序的入口点。 // include "stdafx.h" include include 阅读全文

posted @ 2017-07-30 14:41 炮二平五 阅读(182) 评论(0) 推荐(0)

hihocoder1322 树结构判定(161周)
摘要:hihocoder1322 : 树结构判定(161周) "题目链接" 思路: 无向图中判断是不是一棵树。 并查集判断。判断是不是只有一个连通分量。并且该联通分量中没有环。没有环的判定很简单就是看边的数目和顶点数目,如果边数大于等于顶点数则存在环。 也可以用dfs来做。 ac代码: c++ // hi 阅读全文

posted @ 2017-07-30 12:23 炮二平五 阅读(162) 评论(0) 推荐(0)

PAT甲级1021. Deepest Root
摘要:PAT甲级1021. Deepest Root 题意: 连接和非循环的图可以被认为是一棵树。树的高度取决于所选的根。现在你应该找到导致最高树的根。这样的根称为最深根。 输入规格: 每个输入文件包含一个测试用例。对于每种情况, 第一行包含正整数N( 1)直接break了。。害我一直错 = =。测试点2 阅读全文

posted @ 2017-07-30 11:47 炮二平五 阅读(1295) 评论(1) 推荐(1)

PAT甲级1018. Public Bike Management
摘要:PAT甲级1018. Public Bike Management 题意: 杭州市有公共自行车服务,为世界各地的游客提供了极大的便利。人们可以在任何一个车站租一辆自行车,并将其送回城市的任何其他车站。 公共自行车管理中心(PBMC)不断监测所有车站的实时能力。 如果一个车站正好半满,那么一个车站据说 阅读全文

posted @ 2017-07-29 17:04 炮二平五 阅读(1440) 评论(0) 推荐(0)

PAT甲级1017. Queueing at Bank
摘要:PAT甲级1017. Queueing at Bank 题意: 假设一家银行有K台开放服务。窗前有一条黄线,将等候区分为两部分。所有的客户都必须在黄线后面排队,直到他/她轮到服务,并有一个可用的窗口。 假设一个客户不能占用1个小时以上的窗口。 现在考虑到每个客户的到达时间T和处理时间P,您应该告诉所 阅读全文

posted @ 2017-07-29 11:18 炮二平五 阅读(568) 评论(0) 推荐(0)

PAT甲级1016. Phone Bills
摘要:PAT甲级1016. Phone Bills 题意: 长途电话公司按以下规定向客户收取费用: 长途电话费用每分钟一定数量,具体取决于通话时间。当客户开始连接长途电话时,将记录时间,并且客户挂断电话时也是如此。 每个日历月份,每分钟都会向客户发送一个帐单(按照一天中的时间确定)。您的工作是为每个月准备 阅读全文

posted @ 2017-07-28 22:09 炮二平五 阅读(369) 评论(0) 推荐(0)

PAT甲级1014. Waiting in Line
摘要:PAT甲级1014. Waiting in Line 题意: 假设银行有N个窗口可以开放服务。窗前有一条黄线,将等候区分为两部分。客户要排队的规则是: 每个窗口前面的黄线内的空间足以包含与M个客户的一条线。因此,当所有N行都满时, 所有的客户(和包括)(NM + 1)第一个将不得不等待在黄线后面的一 阅读全文

posted @ 2017-07-28 11:22 炮二平五 阅读(1057) 评论(1) 推荐(0)

PAT甲级1013. Battle Over Cities
摘要:PAT甲级1013. Battle Over Cities 题意: 将所有城市连接起来的公路在战争中是非常重要的。如果一个城市被敌人占领,所有从这个城市的高速公路都是关闭的。我们必须立即知道,如果我们需要修理任何其他高速公路,以保持其他城市的连接。鉴于所有其余高速公路标记的城市地图, 你应该告诉高速 阅读全文

posted @ 2017-07-27 23:00 炮二平五 阅读(848) 评论(1) 推荐(0)

PAT甲级1012. The Best Rank
摘要:PAT甲级1012. The Best Rank 题意: 为了评估我们第一年的CS专业学生的表现,我们只考虑他们的三个课程的成绩:C C编程语言,M 数学(微积分或线性代数)和E 英语。同时,我们鼓励学生强调自己的最优秀队伍 也就是说, 在三个课程和平均成绩的四个职级中,我们打印每个学生的最佳排名。 阅读全文

posted @ 2017-07-27 20:28 炮二平五 阅读(538) 评论(0) 推荐(0)

PAT甲级1010. Radix
摘要:PAT甲级1010. Radix (25) 题意: 给定一对正整数,例如6和110,这个等式6 = 110可以是真的吗?答案是“是”,如果6是十进制数,110是二进制数。 现在对于任何一对正整数N1和N2,你的任务是找到一个数字的基数,而另一个数字的基数。 输入规格: 每个输入文件包含一个测试用例。 阅读全文

posted @ 2017-07-27 14:49 炮二平五 阅读(2452) 评论(0) 推荐(1)

PAT甲级1003. Emergency
摘要:PAT甲级1003. Emergency 题意: 作为一个城市的紧急救援队长,你将得到一个你所在国家的特别地图。该地图显示了几条分散的城市,连接着一些道路。每个城市的救援队数量和任何一对城市之间的每条路线的长度在地图上标记。当你从其他城市发出紧急电话时, 你的工作是尽快引导你的人到这个地方,同时在途 阅读全文

posted @ 2017-07-26 21:27 炮二平五 阅读(1347) 评论(0) 推荐(0)

hihocoder1320 160周 压缩字符串
摘要:hihocoder1320 "题目链接" 思路: dp解法。用map[i][j]表示从第i个开始到第j个的字串的best压缩长度。(包括i,j,两端闭合)。 用k表示i,j中的一点。 用zip()表示压缩i,j字串的函数,如果字串内部不能形成循环则返回字串长度。 map[i][j] =min{ zi 阅读全文

posted @ 2017-07-26 13:56 炮二平五 阅读(347) 评论(0) 推荐(0)

binary search
摘要:binary search low = 0 , high = n 1; 偶数个 [low,mid] | [mid + 1, high] 奇数个 left) mid (right low = 0 , high = n; 偶数个 [low,mid 1] | [mid, high) = [low,mid) 阅读全文

posted @ 2017-07-25 11:04 炮二平五 阅读(201) 评论(0) 推荐(0)

leetcode47. Permutations II
摘要:leetcode47. Permutations II 题意: 给定可能包含重复的数字的集合,返回所有可能的唯一排列。 思路: 这题全排列两种写法。 用hash表记录已经visit的数字,虽然看起来很朴实,但是比另一种方法稳多了,而且hash表的查找也是很高效的。 另一种用swap进行交换,确保已经 阅读全文

posted @ 2017-07-24 00:09 炮二平五 阅读(130) 评论(0) 推荐(0)

leetcode76. Minimum Window Substring
摘要:leetcode76. Minimum Window Substring 题意: 给定字符串S和字符串T,找到S中的最小窗口,其中将包含复杂度O(n)中T中的所有字符。 例如, S =“ADOBECODEBANC” T =“ABC” 最小窗口为“BANC”。 注意: 如果S中没有覆盖T中所有字符的窗 阅读全文

posted @ 2017-07-21 21:27 炮二平五 阅读(505) 评论(0) 推荐(0)

leetcode87. Scramble String
摘要:leetcode87. Scramble String 题意: 给定一个字符串s1,我们可以通过将它分解为两个非空子字符串来表示为二叉树。 思路: 递归解法 对于每对s1,s2. 在s1某处切一刀,s1分成left,right,然后在s2首部开始等长的地方切一刀,切成left,right.只要s1的 阅读全文

posted @ 2017-07-20 21:54 炮二平五 阅读(332) 评论(0) 推荐(0)

hihocoder1310 岛屿
摘要:hihocoder1310 岛屿 题意: 中文题意 思路: dfs,面积和数量都很好求,问题在岛屿形状上,感觉让人比较麻烦,用vector保存各个点,只要两个岛之间每个点距离一样就好了,这里的形状的定义比较狭隘,就是平移可得的意思,如果换成可以旋转等变换得到,会比较麻烦感觉。 ac代码: C++ C 阅读全文

posted @ 2017-07-19 13:39 炮二平五 阅读(168) 评论(0) 推荐(0)

leetcode644. Maximum Average Subarray II
摘要:leetcode644. Maximum Average Subarray II 题意: 给定由n个整数组成的数组,找到长度大于或等于k的连续子阵列,其具有最大平均值。您需要输出最大平均值。 思路: 先计算前k个的avg和sum,然后每次往后加一个数,每次加一个数的同时用一个tempsum( = s 阅读全文

posted @ 2017-07-19 10:50 炮二平五 阅读(873) 评论(0) 推荐(0)

leetcode132. Palindrome Partitioning II
摘要:leetcode132. Palindrome Partitioning II 题意: 给定一个字符串s,分区使分区的每个子字符串都是回文。 返回对于s的回文分割所需的最小削减。 例如,给定s =“aab”, 返回1,因为可以使用1切割生成回文分割[“aa”,“b”]。 思路: 一开始我用dfs + 阅读全文

posted @ 2017-07-16 22:00 炮二平五 阅读(187) 评论(0) 推荐(0)

leetcode143. Reorder List
摘要:leetcode143. Reorder List 题意: 给定单链表L:L0≤L1≤... Ln 1≤Ln, 将其重新排序为:L0≤Ln≤L1≤Ln 1≤L2≤Ln 2≤... 思路: 第一次遍历把数组切成两半,然后吧右边的reverse,然后连接两个list,注意细节 ac代码: C++ pyt 阅读全文

posted @ 2017-07-14 23:47 炮二平五 阅读(111) 评论(0) 推荐(0)

leetcode148. Sort List
摘要:leetcode148. Sort List 题意: 使用恒定空间复杂度在O(nlogn)时间内对链表进行排序。 思路: merge排序,不断二分,然后归并,返回新的链表,归并链表。 用slow和fast指针找到mid点,并且要注意的是结束的时候slow指针已经是mid + 1的点了,如果还让rig 阅读全文

posted @ 2017-07-13 22:49 炮二平五 阅读(169) 评论(0) 推荐(0)

leetcode149. Max Points on a Line
摘要:leetcode149. Max Points on a Line 题意: 给定二维平面上的n个点,找到位于同一直线上的最大点数。 思路: O(n^2),第一重遍历确定点,第二重遍历求确定点和剩下的点的斜率,这题对斜率的精度要求比较高。有一个特殊的办法就是用pair储存dx,dy。只要pair 相等 阅读全文

posted @ 2017-07-13 16:45 炮二平五 阅读(193) 评论(0) 推荐(0)

c++的atoi和stoi一些区别
摘要:c++的atoi和stoi一些区别 对c++标准库中字符串转化为int的两个函数atoi()和stoi()两个有所混乱,特地研究了一下。 stoi() 标准库的函数默认模板 int stoi (const string& str, size_t idx = 0, int base = 10); in 阅读全文

posted @ 2017-07-13 14:05 炮二平五 阅读(9446) 评论(0) 推荐(0)

2017京东面试编程题保卫方案
摘要:2017京东面试编程题 保卫方案 来自codeforce的原题: "CF题目链接" 题意: 就是在一个环形的地方,排列着一堆山,要求有几对山是可以相互观察的对方的。 相互观察的条件是 1. 如果相邻,必可以互相观察 2. 不相邻,但是两者之间没有更高的山,可以互相观察,因为环形的,所以有两个方向,顺 阅读全文

posted @ 2017-07-12 21:12 炮二平五 阅读(1157) 评论(0) 推荐(0)

leetcode6.ZigZag Conversion
摘要:leetcode6.ZigZag Conversion 题意: 字符串“PAYPALISHIRING”以给定行数的Z形图案写入,如下所示:(您可能希望以固定字体显示此模式以获得更好的可读性) 思路: 横向对第0行和最后一行做特别的处理,纵向要考虑此时字符串是向上排列还是向下排列。公式由画图易推倒。 阅读全文

posted @ 2017-07-10 17:52 炮二平五 阅读(158) 评论(0) 推荐(0)

leetcode7. Reverse Integer
摘要:leetcode7. Reverse Integer 题意: 反转整数。 思路: 反转整数。 注意一下边界情况。 比如最后一个数字是0;比如反转的整数溢出int32,这样就返回0。 ac代码: C++ C++ class Solution { public: int reverse(int x) { 阅读全文

posted @ 2017-07-10 17:52 炮二平五 阅读(122) 评论(0) 推荐(0)

leetcode4. Median of Two Sorted Arrays
摘要:leetcode4. Median of Two Sorted Arrays 题意: 有两个已排序的数组nums1和nums2,数组大小分别为m和n。 找到两个排序数组的中位数。整体运行时间复杂度应为O(log(m + n))。 思路: 感觉这道题还是有点难的,主要是对时间复杂度要求有点无法适应。 阅读全文

posted @ 2017-07-10 17:51 炮二平五 阅读(170) 评论(0) 推荐(0)

leetcode5. Longest Palindromic Substring
摘要:leetcode5. Longest Palindromic Substring 题意: 给定一个字符串s,找到s中最长的回文子字符串。可以假设s的最大长度为1000。 思路: O(n)遍历s,然后以每个char为回文的中心,向两边尽可能延长,以此找出最长的回文。 初始化left和right的时候, 阅读全文

posted @ 2017-07-10 17:51 炮二平五 阅读(102) 评论(0) 推荐(0)

leetcode3. Longest Substring Without Repeating Characters
摘要:leetcode3. Longest Substring Without Repeating Characters 题意: 给定一个字符串,找到最长子串的长度,且该字串不含不重复字符。 思路: 用map存储,key为字符,value为index; O(n),遍历字符串,动态规划,一开始确定start 阅读全文

posted @ 2017-07-09 22:15 炮二平五 阅读(111) 评论(0) 推荐(0)

leetcode1. Two Sum
摘要:leetcode1.Two Sum 题意: 给定一个整数数组,返回两个数字的索引,使它们相加到一个特定的值。 您可以假设每个输入都只有一个解决方案,而您不能使用相同的元素两次。 思路: O(n),遍历,每次将当前的值和下标存入字典,遍历到结果时,target 当前值 应该在字典中,然后直接返回两者下 阅读全文

posted @ 2017-07-09 22:14 炮二平五 阅读(146) 评论(0) 推荐(0)

leetcode2. Add Two Numbers
摘要:leetcode2. Add Two Numbers 题意: 给定两个非空的链表,表示两个非负整数。数字以相反的顺序存储,每个节点包含一个数字。添加两个数字并将其作为链表返回。 你可以假设两个数字不包含任何前导零,除了数字0本身。 思路: O(n)遍历两个链表,两个节点和一个carry(用于记录前面 阅读全文

posted @ 2017-07-09 22:14 炮二平五 阅读(525) 评论(0) 推荐(0)

用python slearning类库实现数据挖掘(python3.x)
摘要:Summary of test0 data : "source data" source code : in test0 file reference : "Reference Website" / "Article in English Website" attention : the link 阅读全文

posted @ 2017-07-01 18:20 炮二平五 阅读(1675) 评论(0) 推荐(0)

导航