• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
mengxm
博客园    首页    新随笔    联系   管理    订阅  订阅
上一页 1 2 3 4 5 6 7 8 下一页
2011年10月28日
C++文件操作详解(ifstream、ofstream、fstream)
摘要: C++ 通过以下几个类支持文件的输入输出:ofstream: 写操作(输出)的文件类 (由ostream引申而来) ifstream: 读操作(输入)的文件类(由istream引申而来) fstream: 可同时读写操作的文件类 (由iostream引申而来) 打开文件(Open a file)对这些类的一个对象所做的第一个操作通常就是将它和一个真正的文件联系起来,也就是说打开一个文件。被打开的文件在程序中由一个流对象(stream object)来表示 (这些类的一个实例) ,而对这个流对象所做的任何输入输出操作实际就是对该文件所做的操作。要通过一个流对象打开一个文件,我们使用它的成员函数o 阅读全文
posted @ 2011-10-28 06:39 mengxm 阅读(1125) 评论(0) 推荐(0)
c++ fstream中seekg()和seekp()的用法
摘要: 先说一下C语言中fseek()的功能:函数原型:int fseek(FILE *fp, LONG offset, int origin)参数含义:fp 文件指针 offset 相对于origin规定的偏移位置量 origin 指针移动的起始位置,可设置为以下三种情况: SEEK_SET 文件开始位置 SEEK_CUR 文件当前位置 SEEK_END 文件结束位置C++中seep()和seekg()函数功能seekp:设置输出文件流的文件流指针位置seekg:设置输入文件流的文件流指针位置函数原型:ostream& seekp( streampos pos );ostream& 阅读全文
posted @ 2011-10-28 06:34 mengxm 阅读(9738) 评论(0) 推荐(1)
2011年9月16日
poj1144
摘要: http://poj.org/problem?id=1144求图中割点数目,只是输入处理比较麻烦,由于不知道有多长,所以需要字符输入然后转换成数字 1 #include <stdio.h> 2 #include <string.h> 3 #define SIZE 101 4 #define MIN(a,b) ((a)<(b)?(a):(b)) 5 bool map[SIZE][SIZE],cut[SIZE]; 6 int num,cnt,count,k,dfn[SIZE],low[SIZE]; 7 const int root=1; 8 char line[5*S 阅读全文
posted @ 2011-09-16 00:13 mengxm 阅读(431) 评论(0) 推荐(0)
2011年9月15日
poj1523
摘要: http://poj.org/problem?id=1523割点简单题,问去掉一个割点后有多少个连通分支。 1 #include <stdio.h> 2 #include <string.h> 3 #define SIZE 1001 4 #define MIN(a,b) ((a)<(b)?(a):(b)) 5 #define MAX(a,b) ((a)>(b)?(a):(b)) 6 typedef struct NODE 7 { 8 int to; 9 NODE *next;10 }node;11 node edge[SIZE*SIZE],*head[SIZ 阅读全文
posted @ 2011-09-15 00:54 mengxm 阅读(404) 评论(11) 推荐(0)
poj2117
摘要: http://poj.org/problem?id=2117此题问去掉一个点后最多可以产生多少连通分量。1.当不存在边时,最大连通分量数即节点数减一。2.当存在边时,用tarjan算法求出去在某一连通分量内去掉一点后该连通分量会分解成几个连通分量,求出最大连通分量数后,加上节点数减一即可。 1 #include <stdio.h> 2 #include <string.h> 3 #define SIZE 10001 4 #define MIN(a,b) ((a)<(b)?(a):(b)) 5 #define MAX(a,b) ((a)>(b)?(a):(b) 阅读全文
posted @ 2011-09-15 00:31 mengxm 阅读(454) 评论(0) 推荐(0)
2011年9月10日
poj1904
摘要: http://poj.org/problem?id=1904看到此题,似乎成了一个二分图,也许会往二分图算法上去思考,但是最后巫师的匹配数据让我疑惑,为什么要给你这个数据?将巫师给你的数据作为每个王子的根节点,指向每个王子喜欢的其他女子,这时两点间路径的意义为可以替换的意思,那么即使有向图一定存在强连通分支,那么强联通分支内的所有节点都可以互相代替,所以只需要查找每个王子的根节点所在的强连通分支内有多少个他喜欢的女孩即可。对输入和输出用putchar和getchar,并且用g++提交时间可以提高到480MS,如果用c++提交scanf和printf,则需要3+s左右。putchar和getch 阅读全文
posted @ 2011-09-10 20:14 mengxm 阅读(477) 评论(0) 推荐(0)
2011年9月9日
hdu1005
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=1005一看就是斐波那契数列,但是n过于大,猜测会超时,由于%7所以不会是大数,然后为了加快运算速度,discuss里有人用了寻找循环节的方法,但是这个很难短时间内看出来,所以我采用矩阵运算+二分。首先构造两个矩阵第一个矩阵:f(n),f(n-1) 0,0第二个矩阵:a,1 b,0通过这两个矩阵相乘可以得到任意f(n)。接下来就是用北大书上的二分幂的方式加快运算。 1 #include <stdio.h> 2 #define mold(a) ((a)%7) 3 int matrix[2][2... 阅读全文
posted @ 2011-09-09 11:17 mengxm 阅读(1420) 评论(0) 推荐(0)
2011年9月8日
poj3160
摘要: http://poj.org/problem?id=3160题意读懂是关键,he chould choose to enter and give out a gift and hear the words from the recipient, or bypass the room in silence.通过这句话知道当收礼者给予的反应是负值时可以不加,flymouse decided to choose only one of those rooms as the place to start his journey and follow directed paths to visit on 阅读全文
posted @ 2011-09-08 14:07 mengxm 阅读(325) 评论(0) 推荐(0)
2011年9月7日
poj2762
摘要: http://poj.org/problem?id=2762强连通缩点不解释,one-way corridors connecting some rooms注意路径是单向的。缩点以后,根据题目描述任取两点都有路径连通,随意画一个DAG会发现总有一条路可以连接所有节点,猜测这个规则是否成立。有点集S,s,s是S的一个子集,DAG中找到一个出度为0的节点a,入度为0的节点b,将该a,b加入s中,从S中出去a,b,有条件可知a~b有路径连通,然后从S中任意拿出一个节点k,条件可知a~k~b,将k加入s中,从S中出去k,接下来同样取点,取出来的节点由于条件可知一点可以放入某个~中,当S为空时,则形成了 阅读全文
posted @ 2011-09-07 20:46 mengxm 阅读(257) 评论(0) 推荐(0)
2011年9月6日
poj2553
摘要: http://poj.org/problem?id=2553强连通简单题,难点在于对题意的理解上,尤其是这句话if for every nodewinGthat is reachable fromv,vis also reachable fromw. 是说在v可以到达的所有点也都可以到达v,由此就可以知道求解缩点以后出度为0的点中的节点数字即可,并且本题不存在出题者说的bottom为空的情况,DAG肯定有出度为0的节点。tarjan代码View Code 1 #include <iostream> 2 #include <memory.h> 3 #include < 阅读全文
posted @ 2011-09-06 01:08 mengxm 阅读(267) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 7 8 下一页
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3