自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(148)
  • 收藏
  • 关注

原创 leetcode之Intersection of two arrays,delete node in a list, same tree

思路都比较简单,主要就是要代码简洁和做到bug free1.注意size()==02.注意delete3.注意直接实现  和 代码简洁度

2016-06-12 10:54:16 321

原创 leetcode 之reverse string ,Nim game, add digits

add digit启发:注意找规律,多写几个找出数字中的规律

2016-06-10 12:36:00 366

原创 leetcode最后一遍

校招快要开始了,决定来最后刷一遍leetcode找到代码能力。恩 加油

2016-06-10 12:19:33 295

原创 codeforce之最少加多少能组成一个凸三角形

这是个纯数学规律的题目:只要让最大的那条边小于剩下的所有边之和即可,如果小于等于,只需要将剩下的边的和加到比最大的那个大1即可。

2016-06-05 21:22:03 318

原创 codeforce之Magic Powder

题目:The term of this problem is the same as the previous one, the only exception — increased restrictions.InputThe first line contains two positive integers n and k (1 ≤ n ≤ 100 000

2016-06-03 23:20:14 375

原创 codeforce之Bear and Two Paths

题目:Bearland has n cities, numbered 1 through n. Cities are connected via bidirectional roads. Each road connects two distinct cities. No two roads connect the same pair of cities.Bear Li

2016-05-31 11:46:34 330

原创 codeforce之 Bear and Colors

题目:Bear Limak has n colored balls, arranged in one long row. Balls are numbered 1 through n, from left to right. There are n possible colors, also numbered 1 through n. The i-th ball has c

2016-05-31 10:33:33 418

原创 codeforce之problems for round

题目:There are n problems prepared for the next Codeforces round. They are arranged in ascending order by their difficulty, and no two problems have the same difficulty. Moreover, there are m 

2016-05-31 10:10:25 266

原创 CF之Recycling Bottles

题目:It was recycling day in Kekoland. To celebrate it Adil and Bera went to Central Perk where they can take bottles from the ground and put them into a recycling bin.We can think Central P

2016-05-28 18:31:10 535

原创 CF之Vasya and String

题目:High school student Vasya got a string of length n as a birthday present. This string consists of letters 'a' and 'b' only. Vasya denotesbeauty of the string as the maximum length of a su

2016-05-28 14:06:11 700

原创 code force 之 Money transfer

转化为求最多和为0的子数组,其实就是前缀和的次数#include#include#include#include#include#include#include#include#includeusing namespace std;map m;int a[100001];int max(int a, int b) { return a > b ? a : b;}in

2016-05-24 23:03:33 529

原创 ACM刷题准备

简单搜索搜索进阶Dancing links最短路并查集最小生成树线段树生成树连通图匹配网络流基础dp基础计算几何数论基础kmp后缀树矩阵

2016-05-20 09:56:26 556

原创 JAVA面向对象学习

面向对象:1.static成员不能访问非static成员2.对象,引用,指针

2016-05-05 23:07:17 301

原创 kuangbin带你飞之简单搜索 B,C

很明显的找最短路的问题,很明显的BFS实现,故意写了个DFS,果然超时。。以及目前写代码的速度还是有点慢,要多写了

2016-05-05 19:11:54 270

原创 lintcode之不同子序列数 + 序列II

不同子序列:很明显是dp, 当位置相等的时候,等于f(i - 1, j - 1) + f(i, j - 1 )否则就是f(i, j - 1)子序列:找打第一个相邻升序,从后向前找到第一个大于的,交换,排序

2016-04-27 00:03:59 563

原创 lintcode之快速幂

利用乘积的模等于模的乘积再取模的性质(很好证明)同时利用幂运算的分解特性

2016-04-25 22:48:53 269

原创 编程之美之从无头单链表中删除节点

`1.将data转移 2.将next重置 3.删除节点 4.将指针置为空

2016-04-23 22:25:46 288

原创 编程之美之字符串移位包含的问题

s2出现在s1经过移位得到的字符串中充要条件是s2出现在S1S1中自己写几个样例就很容易理解了

2016-04-23 21:48:36 317

原创 编程之美只有加法的面试题

1:枚举个数(个数的大小是有限的,可以进行放缩)num=i + i+1 + i+2 + ....+ i+k-1  一共有k个数。= (i + i+k-1)*k/2=(2*i+k-1)*k/2=k*(i+ (k-1)/2)=k*i + k*(k-1)/2判断条件: num%(k*(k-1)/2)==0 或者 2*num>k*(k-1) 得: ki=num/k;可得出i

2016-04-23 21:24:32 270

原创 编程之美区间重合判断

主要是首先要进行区间的合并(排序 + 遍历),然后进行二分查找即可

2016-04-23 21:10:05 295

原创 编程之美之数组分割

无序数组,分割成为两个子数组,使得子数组之间的和最接近问题转换为从2n个数中找出n个,使得他们的和最接近总体和的1/2利用dp记录在前t个数中随机取i个的所有的可能的和即可,然后遍历,这样会出现指数级别可以利用遍历可能的和的值,查询在该值在前面是否出现,这样会将复杂度降低到多项式级别

2016-04-23 21:00:47 425

原创 数组循环移位

有一部分的顺序是不会发生改变的,所以实际上就是交换数组的两部分可以通过两次部分逆序和一次总体逆序来实现注意移位之前先进行取模操作来避免不必要的操作

2016-04-23 20:40:45 410

原创 最长递增子序列

1.直接dp2.dp + 按照当前已有长度进行二分枚举  nlogn

2016-04-23 20:35:46 205

原创 编程之美之子数组和的最大值(二维)

枚举行边界,此时退化成一维,直接按照一维来做

2016-04-23 20:17:57 280

原创 编程之美之子数组的最大值

直接贪心,复杂度O(n)

2016-04-23 20:11:53 211

原创 编程之美之子数组的最大乘积

空间换时间,记录左右乘积两个数组,然后进行一次遍历时间复杂度O(n)

2016-04-23 20:11:02 219

原创 编程之美快速寻找满足条件的两个数

就是2sum问题,直接排序加两个指针

2016-04-23 20:06:37 270

原创 编程之美之寻找最近点对

分治的思想首先,按照一个x进行分块,尽量保证左右差不多相等然后求出最小,划分,在2m * m的块中至多有八个,直接解决

2016-04-23 20:02:15 363

原创 编程之美之寻找数组中的最大和最小值

1.直接比较2n2.分治,1.5n同理的问题:求出N个数的数组中的第二大数

2016-04-23 19:46:22 364

原创 编程之美斐波那契数列

1.常规递归2.进行二次矩阵分解,然后利用求指数的方法,分解为按照指数的二进制来求解

2016-04-23 19:38:16 297

原创 编程之美之找到符合条件的数

给定N,找到最小的M,使得N*M的十进制表示中只有1,0将问题转换为在所有的只有1,0组成的数中寻找最小的一个能整除N的数即可为了避免枚举2^k的情况,将2^k的空间按照余数分解成为N-1个区间,记录每个空间中的最小数即可,这样可以让得到的数是最小书上的代码很清晰,直接看就能懂很赞.这道题目主要学到的思想还是问题转换和空间分割

2016-04-23 19:12:21 339

原创 编程之美最大公约数

1.辗转相除(对于数比较大的时候,会耗时比较高)2.变成相减,利用x - y,y和x,y有相同的最大公约数3.2虽然降低了运算的复杂度,但是很明显增加了迭代次数利用f(x,y)  =  f(p*x1, y) = f(x1, y)即可,其中P是素数,并且y不能整除P最简单的直接利用2作为素数P, 可以利用位运算复杂度 O(log2(max(x,y)))

2016-04-23 18:33:51 236

原创 编程之美精确表达浮点数

首先数表示为整数 + 小数小数分为有限小数和无限小数对于有限小数就很简单直接 a / 10^n对于存在无限循环小数的情况:x = (a + 0.bbbb) / 10 ^n10 ^m * 0.bbb = bbb + 0.bbb;即可解出0.bbb再带入即可 然后进行约分,也就是需要求最大公约数

2016-04-23 17:19:01 374

原创 编程之美之第k大数

1.排序2.快排3.对可选的值进行二分4.堆排(最小堆,每个数据只需要便利一遍,适合数据量很大不能一次性读入内存中的情况)

2016-04-23 16:06:24 291

原创 编程之美之发帖水王

就是一个摩尔投票的过程这个时候不需要进行排序,直接进行,复杂度是O(n)扩展:找出其中三个发帖数目超过1/4的人的ID,直接变成3个的摩尔投票先处理是空的状态,但是同时注意不能出现一个ID放在了两个中的状态

2016-04-23 10:46:59 204

原创 编程之美之阶乘

5的个数决定0的个数,2的个数决定二进制中最后一个1的位置(判断一个数是不是2的方幂)

2016-04-23 10:09:24 251

原创 编程之美之求二进制中1的个数

复杂度为t次,t为1的次数while (n){cnt++;n = (n - 1) & n;}很好理解

2016-04-22 21:24:24 264

原创 编程之美

再过几天就要面试微软的实习,今天开始再过一遍编程之美,之前也看过一部分,但是没有看完,也没有系统的总结。现在开始认真的看,系统总结下

2016-04-22 21:11:46 194

原创 lintcode删除排序数组中的重复数字 II

很简单不贴代码了和之前那个思想很类似

2016-04-21 22:08:55 361

原创 lintcode之数组划分

题目:给出一个整数数组nums和一个整数k。划分数组(即移动数组nums中的元素),使得:所有小于k的元素移到左边所有大于等于k的元素移到右边返回数组划分的位置,即数组中第一个位置i,满足nums[i]大于等于k。解答:两个指针交换注意边界和只在l class Solution {public: in

2016-04-21 21:59:52 374

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除