自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

昊海东情的专栏

面向对象编程

  • 博客(90)
  • 收藏
  • 关注

原创 TCP/IP协议详解v1(第三章IP网际协议)

3.1 引言 IP协议是TCP/IP协议族最核心的协议。所有的TCP,UDP,ICMP,IGMP数据都以IP数据报格式传输 IP协议只提供不可靠无连接的数据传输服务 不可靠指IP协议不能保证数据报成功的到达目的地。IP仅提供尽力而为的传输服务,如果某个路由器的缓冲区满了将会丢弃这个数据报,并发送ICMP消息报给信源。可靠性必须由上一层的tcp协议提供 无连接(connectionless)指

2015-07-06 13:08:42 570

原创 TCP/IP协议详解v1(第二章数据链路层)

第二章数据链路层2.1 链路层的三个目的: 1.为IP模块发送和接收IP接收模块 2.为ARP模块发送ARP请求和接收ARP应答 3.为RARP发送RARP请求和接收RARP应答 TCP/IP支持多种不同的连路层协议 2.2以太网和IEEE802封装 以太网采用CSMA/CD的媒体接入方法 以太网IP数据报的封装在RFC1984中定义 IEEE802的IP数据报在RFC1042中定

2015-07-06 13:08:00 481

原创 TCP/IP协议详解v1(第一章概述)

第一章概述 1.1 TCP/IP是跨平台的的协议族 1.2 分层 大多数的网络应用程序都被设计成sc模式(客户-服务器模式) 应用程序一般是用户的一个进程,而下三层一般在os内核中运行 顶层和下三层的区别是应用层更关心应用程序的细节,而不是数据在网络中的传输活动 下三层处理通讯细节 构造互联网的最简单的方法是将不同类型的网络通过路由器连接 我们可以划分出端系统(两边的主机)

2015-07-06 13:06:27 1010

原创 文章标题

这类的的期望的问题,求某一点的期望的时候可能同当前点的期望有关系,可以通过移项可以将dp当前状态调整到一边。 记忆化搜索,通过递归的方法进行搜索,增加vs数组判断是否已经访问完成。递归出口要考虑全面。 #include <iostream>#include <algorithm>#include <string.h>#include <stdio.h>using namespace

2015-06-06 23:54:03 313

原创 HDU4405

求期望的概率dp,这种求期望的题目要考虑到最终情况的情况期望是0,当前情况的期望等于sum(p(转移到下一个情况的概率)*下一个情况的期望) 这道题要考虑跳出去的情况#include <iostream>#include <algorithm>#include <cstdio>#include <string.h>using namespace std;const int Len=100

2015-06-06 23:42:23 524

原创 HDU2159

二维完全背包#include <iostream>#include <string.h>using namespace std;int a[100],b[100],dp[100][100];int main(){ int n,m,k,s; while(cin>>n>>m>>k>>s){ memset(a,0,sizeof(a)); memset

2015-05-31 12:32:29 375

原创 HDU2084

经典的dp问题由底向上不断寻找最优解#include<iostream>#include<stdio.h>#include<stdlib.h>#include <algorithm>#include <cmath>#include <stdlib.h>#include <set>#include <sstream>#define PI 3.1415927using namespac

2015-05-31 12:21:25 308

原创 HDU1203

简单0-1背包和概率有关的背包和HDU2955类似#include <iostream>#include <string.h>#include <algorithm>using namespace std;int w[10000+10];double v[10000+10];double dp[10000+10];int main(){ int m,n; while(c

2015-05-31 12:18:53 301

原创 HDU1171

以sum/2为总容量的0-1背包#include <iostream>#include <algorithm>#include <string.h>using namespace std;int li[5010],dp[250005];int main(){ int n; while(cin>>n){ if(n<0) break;

2015-05-31 12:16:28 280

原创 HDU1069

因为不限制个数所以可以将每个将每个立方体看成三个立方体放入集合中然后根据X,Y的大小进行dp#include<iostream>#include<string>#include<cstring>#include<algorithm>#include<cstdio>#include<cmath>using namespace std;const int maxn=10000;struct

2015-05-31 09:12:46 342

原创 HDU1087

最大递增子段和 注意这类问题子段是否连续,如果是连续子段只需要一重循环,如果是非连续子段则需要两重循环 //状态抓方程 if(a[i]>a[j]) dp[i]=max(dp[i],dp[j]+a[i]); #include <iostream>#include <algorithm>#include <string.h>using namespace st

2015-05-31 08:54:22 289

原创 HDU2602

简单0-1背包 #include <iostream>#include <algorithm>#include <string.h>using namespace std;typedef long long ll;const int Len=10000;ll dp[Len];int v[Len],w[Len];int main(){ int t; cin>>t;

2015-05-31 08:49:00 284

原创 HDU1505

和HDU1506同理 注意读入是列连续的为f时的处理,a[i]通过自增的方法来遇到r的时候变0的方法来保存连续的状态。#include <iostream>#include <cstdio>#include <algorithm>#include <string.h>using namespace std;int a[1010],maxx;char s[3000];int x,y;

2015-05-31 08:47:21 418

原创 HDU1506

求最大的连续面积,每个面积等同于求(右边界减去左边界-1)*连续的块的高度。 可以通过迭代的方法求左边界和右边界,求左边界时可以从左往右进行遍历,求右边界时可以从右往左进行遍历。 对于块i来说如果long(i-1)>=long(i)那么i-1块的左边界也是块i的左边界,右边界同理。 #include <iostream>#include <algorithm>#include <std

2015-05-31 08:19:10 557

原创 HDU1506

求最大的连续面积。对于块j来说如果右边的块大于或者等于块j的高度那么说明块j+1的右边界也是块j的右边界。左边界的道理相同,dp1[i]和dp2[i]数组的作用就是代表i点的左边界和右边界是什么。 #include <iostream>#include <algorithm>#include <stdio.h>#include <string.h>using namespace std

2015-05-30 23:51:55 285

原创 HDU1003

最大字段和#include <iostream>#include <algorithm>#include <string.h>using namespace std;typedef long long ll;const long long Len=100005;int p[Len];int main(){ int t; cin>>t; int casee=0;

2015-05-30 23:43:47 319

原创 HDU1231

求最大子段和,需要记录开始喝结束的位置.一维dp,注意s和e的初始化。#include "iostream" #include "stdio.h" #include "math.h" #include "vector" #include "queue" #include "memory.h" #include "algorithm" #include "string"

2015-05-30 23:43:15 263

原创 HDU1864

简单0-1背包注意题目条件单项的最大额度和单张发票的最大额度 输入有3A 300,A 300,A 300的情况#include <iostream>#include <algorithm>#include <string.h>#include <cstdio>using namespace std;int main(){ double v,t; int i,j;

2015-05-30 23:37:34 415

原创 HDU2955

浮点数无法作为数组下标进行遍历,改用个数进行遍历。 计算概率反用(1-p(n))的方法进行计算。#include <iostream>#include <string.h>using namespace std;const int MAX=0x7fffffff;double dp[10005];int main(){ int n; while(cin>>n){

2015-05-30 23:33:11 321

原创 ZOJ Problem Set - 3623Battle Ships

Link:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=4769完全背包反向考虑造船和进攻的关系,枚举时间。#include #include #include using namespace std;typedef long long ll;const int Len=40;const int N=4

2015-01-24 20:03:16 309

原创 codeforces Misha and Permutations Summation

#include #include #include #include using namespace std;const int Len=200107;int c[Len],p1[Len],p2[Len],p3[Len];int n;int lowbit(int n){ return n&(-n);}void modify(int y,int x){ while(y<=n

2015-01-17 10:34:47 419

转载 UNIX命令查询卡

2014-11-26 21:59:49 410

原创 UNIX学习笔记(四)

一.多任务UNIX可以同时做很多的事情,在多个任务之间轮流分配处理器的处理时间进行的如此之快,以至于所有事情看起来都像是同时执行的。这就被称作多任务。大多数UNIX系统允许在同一个终端中运行多个程序,这被称作作业控制。该机制可以向没有窗口的用户提供只有窗口系统才有的好处。但是即使运行窗口系统,你也许希望使用作业控制在同一终端窗口中做多件事情。比如,你也许喜欢在一个终端窗口中做大部分工作,而

2014-11-26 21:13:27 311

原创 UNIX学习笔记(三)

一.重定向I/O1.标准输入和标准输出大多数程序将从键盘获取输入。终端键盘就是标准输入输出。所以在默认的情况下,每个标准的程序都将从标准输入获得输入,并吧结果发到标准输出。输入/输出这两种默认情况可能发生变化,这就是所谓的I/O的重定向。如果文件不从文件读取而从标准输入读取,则可以使用把输出写入到某文件中。管道操作符(|)会把某程序的标准输出发到其他程序的标准输入。2.把文本放到文

2014-11-25 21:06:04 288

原创 UNIX学习笔记(二)

一.文件管理

2014-11-24 22:54:33 324

原创 UNIX学习笔记(一)

第一章 UNIX 入门

2014-11-23 22:31:43 328

原创 (LeetCode)Best Time to Buy and Sell Stock II

求在以知一支股票价格变化的情况下能取得的最大收益

2014-11-20 18:03:15 304

原创 (LeetCode)Two Sum

求和为target的下标相对小的两个数

2014-11-19 23:01:39 332

原创 (LeetCode)Median of Two Sorted Arrays

给定两个已经排序好的数组,要求在o(log(m+n))的复杂度下求出中间值。我使用了o(m+n)复杂度的算法原来LeetCode只是考虑算法的正确性。我的做法如下:class Solution {public: double findMedianSortedArrays(int a[], int m, int b[], int n) { int i,j,

2014-11-19 22:59:40 299

原创 (LeetCode)3Sum Closest

class Solution {public: int threeSumClosest(vector &num, int target) { int ans=0,tmp=0; sort(num.begin(),num.end()); for (int i=0;i<num.size();i++){ int j=i+1;

2014-11-19 22:43:21 236

转载 (转)Python字符编码详解

原文章请看http://www.cnblogs.com/huxi/archive/2010/12/05/1897271.html

2014-11-16 11:10:48 305

转载 (转)HTML与XML的区别

什么是HTML  HTML的全拼是Hypertext Markup Language, 中文也就是超文本链接标示语言。HTML(HyperTextMark-upLanguage)即超文本标记语言,是WWW的描述语言。设计HTML语言的目的是为了能把存放在一台电脑中的文本或图形与另一台电脑中的文本或图形方便地联系在一起,形成有机的整体,人们不用考虑具体信息是在当前电脑上还是在网络的其它电脑上

2014-11-15 15:47:43 343

原创 poj3641

#include #include #include using namespace std;typedef long long ll;bool is_prime(ll a){ for(int i=2;i<=sqrt(a);i++){ if(a%i==0)return 0; } return 1;}ll q_mod(ll a,ll p,ll m){ ll ans=1;

2014-11-15 12:49:26 285

转载 (转)Python:10054错误

python socket.error: [Errno 10054] 远程主机强迫关闭了一个现有的连接。问题解决方案:前几天使用python读取网页。因为对一个网站大量的使用urlopen操作,所以会被那个网站认定为攻击行为。有时就不再允许下载。导致urlopen()后,request.read()一直卡死在那里。最后会抛出errno 10054.这个错误是connecti

2014-11-12 16:31:59 1805

原创 (转)python中httplib.IncompleteRead exception

很恼火的错误,使用urllib2获取远程http内容时,是不是出现httplib.IncompleteRead exception错误。错误具体为:httplib.IncompleteRead: IncompleteRead(1353 bytes read)问题是这个问题一会出现,一会不出现。有时候运行一天也不会出错,有时候10分钟就出错。怎么整都不行。 后

2014-11-06 16:32:22 6735 2

转载 (转)Python urllib模块urlopen()与urlretrieve()详解

1.urlopen()方法urllib.urlopen(url[, data[, proxies]]) :创建一个表示远程url的类文件对象,然后像本地文件一样操作这个类文件对象来获取远程数据。参数url表示远程数据的路径,一般是网址;参数data表示以post方式提交到url的数据(玩过web的人应该知道提交数据的两种方式:post与get。如果你不清楚,也不必太在意,一般情况下很少

2014-11-05 15:48:17 449

转载 (转)python 文件和路径操作函数

1: os.listdir(path) //path为目录 功能相当于在path目录下执行dir命令,返回为list类型 print os.listdir('..') 2: os.path.walk(path,visit,arg) path :是将要遍历的目录 visit :是一个函数指针,函数圆形为: callback(arg,dir,fileList) 其中arg为

2014-11-04 21:22:18 424

转载 (转)浅谈HTTP中Get与Post的区别

Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE。URL全称是资源描述符,我们可以这样认为:一个URL地址,它用于描述一个网络上的资源,而HTTP中的GET,POST,PUT,DELETE就对应着对这个资源的查,改,增,删4个操作。到这里,大家应该有个大概的了解了,GET一般用于获取/查询资源信息,而POST一般用于更新资源信息。  1.根

2014-11-04 19:23:24 274

转载 python open 的写入读取方式

自:http://blog.163.com/y845766643@126/blog/static/17104630220101123113029840/r+: Open for reading and writing.  The stream is positioned  at  the beginning of the file.w+:Open for reading a

2014-11-03 23:07:17 683

原创 日期类

.h文件#pragma once#ifndef _LIBCPP_IOSTREAM#include #endif#ifndef _LIBCPP_STRING#include #endif#ifndef _TIME_H_#include #endif#ifndef _DATE_H_#define _DATE_H_class Date{ public: Date(in

2014-11-01 14:50:10 270

空空如也

空空如也

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

TA关注的人

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