摘要: 我在编译ligra是遇到了这个问题,网上搜了一遍,发现是了原因https://gcc.gnu.org/onlinedocs/libstdc%2B%2B/manual/using_dual_abi.html gcc5.4中C++11对一些变量的解析不太一样(表达不太好),比如,f std::list< 阅读全文
posted @ 2018-04-30 13:38 张杨 阅读(10138) 评论(0) 推荐(1) 编辑
摘要: 由于需要使用到cilk plus和std=c++14,所以决定将编译器升级。 基本教程如下: 1.下载GCC源码: 2.解压: 3.下载编译所需依赖项: 4.建立编译输出目录: 5.进入输出目录,执行以下命令,并生成makefile文件: 6.编译: 接下来就是等待了,整个过程大约40分钟左右。PS 阅读全文
posted @ 2018-04-29 16:48 张杨 阅读(8154) 评论(0) 推荐(0) 编辑
摘要: 转载自https://www.linuxidc.com/Linux/2011-02/32763.htm 很多软件在开发或者分析时需要一个像样的IDE,Eclipse是其中很优秀的一个,至少个人感觉很好用 最近在分析一个源代码,需要把这个源码转换成Eclipse工程,经过Google搜索,步骤如下: 阅读全文
posted @ 2018-04-28 12:14 张杨 阅读(712) 评论(0) 推荐(0) 编辑
摘要: 这里主要是写的一个简单的bfs,实例运行了RMAT10无向图,总共有1024个顶点。这种简单的bfs算法存在很明显的缺陷,那就是如果图数据过大,那么进程将会直接被系统杀死。 代码如下: 阅读全文
posted @ 2018-04-23 16:50 张杨 阅读(292) 评论(0) 推荐(0) 编辑
摘要: 转载自https://blog.csdn.net/firefly_2002/article/details/7960595 1. exit用于结束正在运行的整个程序,它将参数返回给OS,把控制权交给操作系统;而return 是退出当前函数,返回函数值,把控制权交给调用函数。 2. exit是系统调用 阅读全文
posted @ 2018-04-20 16:42 张杨 阅读(1535) 评论(0) 推荐(0) 编辑
摘要: 1.编译时打桩linux>gcc -DCOMPILETIME -c mymalloc.clinux>gcc -I. -o intc int.c mymalloc.olinux>./intc使用-I.参数,它会使C预处理器会在搜索通常的系统目录之前,现在当前目录中查找 2.链接时打桩Linux静态连接 阅读全文
posted @ 2018-04-17 23:19 张杨 阅读(605) 评论(0) 推荐(0) 编辑
摘要: 转载自https://www.linuxidc.com/Linux/2017-03/142299.htm Ubuntu 16.04 LTS 降级安装GCC 4.8 Ubuntu 16.04 LTS 降级安装GCC 4.8 由于gcc在5.x版本修改了ABI,导致新版本gcc编译的二进制文件放在老的环 阅读全文
posted @ 2018-04-17 14:53 张杨 阅读(783) 评论(0) 推荐(0) 编辑
摘要: 转载于https://blog.csdn.net/zhangdaisylove/article/details/45721667 1.库的分类 库有静态库和动态库,linux下静态库为.a,动态库为.so。windows下静态库为.lib,动态库为.dll。 静态库是在编译的链接阶段链接嵌入到程序中 阅读全文
posted @ 2018-04-11 21:41 张杨 阅读(479) 评论(0) 推荐(0) 编辑
摘要: 解题思路,和上一题画家问题一样,本题也使用枚举的思想来解决,注意到这里对于时钟的操作,如果达到四次,那么那就和没有操作是一样的,故这里可以使用4进制来模拟每个操作的状态,最坏情况下的执行次数,4的9次方。下面是题目和代码: 2814:拨钟问题 2814:拨钟问题 查看 提交 统计 提示 提问 查看 阅读全文
posted @ 2018-04-07 16:56 张杨 阅读(986) 评论(0) 推荐(0) 编辑
摘要: 这个题目和熄灯问题很类似,都是使用枚举的方法来解决,主要思想是枚举第一行,然后让第二行去匹配第一行,以此类推,一直到第n行,然后判断第n行的情况,如果符合条件,那就是合适的解。下面是一些关键的思想的详细解释: 首先,对于每一行是否涂画的操作:0表示不涂画,1表示涂画。press[ii+1][jj]= 阅读全文
posted @ 2018-04-06 10:30 张杨 阅读(1753) 评论(0) 推荐(0) 编辑
摘要: 服务器端的程序一般有如下几个过程,首先是bind,然后再是listen,最后是accept。再往后就是客户端与服务器连接后的各种操作了。 相比之下,客户端的程序就比较简单了,只需先获得sock_id,再与对应的sock进行connect,其他如下。 服务器端代码: 客户端代码: 调用如下: 服务器启 阅读全文
posted @ 2018-03-26 20:34 张杨 阅读(881) 评论(0) 推荐(0) 编辑
摘要: 刚开始我是想依次计算i个相连矩形的面积,然后找出最大的面积,但是这种做法是时间复杂度是O(n*n),运行会超时。 这个是网上的一种做法,分别计算以第i个矩形作为高时,最大的面积。这就要以i为起始点,左右寻找高大于等于S[i]的矩形,一直到某个矩形小于S[i],或者到了0和n-1。 题目和代码如下: 阅读全文
posted @ 2018-03-10 19:55 张杨 阅读(382) 评论(0) 推荐(0) 编辑
摘要: 本题是常规思路,这里要注意:1)带参命令没有参数和参数错误时终止2)命令不存在时终止3)命令都是错误的,不以—开头。 题目和代码如下: 问题描述 试题编号: 201403-3 试题名称: 命令行选项 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 请你写一个命令行分析程序,用 阅读全文
posted @ 2018-03-10 19:50 张杨 阅读(462) 评论(0) 推荐(0) 编辑
摘要: 本题思路简单 题目和代码如下: 问题描述 试题编号: 201409-3 试题名称: 字符串匹配 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 给出一个字符串和多行文字,在这些文字中找到字符串出现的那些行。你的程序还需支持大小写敏感选项:当选项打开时,表示同一个字母的大写和小 阅读全文
posted @ 2018-03-10 19:33 张杨 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 本题思路:首先,使用一个map来存储所有需要替换的关键词,然后,再逐行的替换掉其中的关键词,记住,find每次的其实位置不一样,否则会出现递归生成没有出现关键词就清空掉。最后输出。 题目和代码如下: 问题描述 试题编号: 201509-3 试题名称: 模板生成系统 时间限制: 1.0s 内存限制: 阅读全文
posted @ 2018-03-09 17:14 张杨 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 本题思路:首先,计算a月1日是星期几,然后再通过b和c得出日期monday,最后判断monday是否合法。 题目与代码如下: 问题描述 试题编号: 201503-3 试题名称: 节日 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 有一类节日的日期并不是固定的,而是以“a月的 阅读全文
posted @ 2018-03-09 17:08 张杨 阅读(282) 评论(0) 推荐(0) 编辑
摘要: 本题思路如下: 题目和代码如下: 问题描述 试题编号: 201512-3 试题名称: 画图 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 用 ASCII 字符来画图是一件有趣的事情,并形成了一门被称为 ASCII Art 的艺术。例如,下图是用 ASCII 字符画出来的 C 阅读全文
posted @ 2018-03-08 21:05 张杨 阅读(516) 评论(0) 推荐(0) 编辑
摘要: 本题思路如下图: 题目和代码如下: 问题描述 试题编号: 201609-3 试题名称: 炉石传说 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 《炉石传说:魔兽英雄传》(Hearthstone: Heroes of Warcraft,简称炉石传说)是暴雪娱乐开发的一款集换式 阅读全文
posted @ 2018-03-08 19:25 张杨 阅读(369) 评论(0) 推荐(0) 编辑
摘要: 本题思路如下: 具体的细节如下:首先去掉字符串中重复出现的/,然后遇到..,就删除栈的最后一个元素,.忽略 下面是代码和题目: 问题描述 试题编号: 201604-3 试题名称: 路径解析 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 在操作系统中,数据通常以文件的形式存储 阅读全文
posted @ 2018-03-08 19:16 张杨 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 我的想法如下图: 代码和题目如下: 问题描述 试题编号: 201703-3 试题名称: Markdown 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 Markdown 是一种很流行的轻量级标记语言(lightweight markup language),广泛用于撰写带格 阅读全文
posted @ 2018-03-07 20:47 张杨 阅读(485) 评论(0) 推荐(0) 编辑
摘要: 这题我的思路是将用户直接与他的权限联系起来。比如: 用户 角色 权限 Alice hr crm:2直接转变为:Alice: crm:2 题目与代码如下: 问题描述 试题编号: 201612-3 试题名称: 权限查询 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 授权 (au 阅读全文
posted @ 2018-03-07 20:30 张杨 阅读(303) 评论(0) 推荐(0) 编辑
摘要: 首先,将全部的输入连接起来,存储到字符串str中,再将\\全部替换为\空格。再依次遍历str。对于:“A”:“B”这种情况,我们以:为分界点来分别存储key和value来进行存储对于:“A”:{ “B”:“C” }的这种情况,我们如果在:号后面遇到的不是引号,那就将value设置为OBJECT,进行 阅读全文
posted @ 2018-03-06 21:24 张杨 阅读(484) 评论(0) 推荐(0) 编辑
摘要: 这题有如下几个点要注意: 1.最开始输出的开始时间和截止时间,这里是不包含截止时间的。 2.月份和星期的英文表示是大小写任意的,并未规定必须是Sat这种形式。 3.星期天的数字标识是0。 我的思路是,首先将月份、天数、小时、分钟、星期统统规格化,格式如下: 月份:规格化前:1,2-4 规格化后:1 阅读全文
posted @ 2018-03-05 20:37 张杨 阅读(952) 评论(0) 推荐(0) 编辑
摘要: 在某种情况下,我们不得不进行整型等数据类型与字符串类型的转换,比如,将“1234”转换为整数,常规的我们可以使用atoi函数来进行转换,或者是写一个循环来做转换,我们在这里也可以使用sstream类来做转换。示例代码如下,演示了atoi和sstream的方法。 阅读全文
posted @ 2018-03-04 20:51 张杨 阅读(1650) 评论(0) 推荐(0) 编辑
摘要: istringstream用于执行C++风格的串流操作。 下面的示例是使用一个字符串初始化istringstream类,然后再使用>>操作符来依次输出字符串中的内容。 阅读全文
posted @ 2018-03-03 20:32 张杨 阅读(337) 评论(0) 推荐(0) 编辑
摘要: sort函数无法对map进行排序,网上的方法一般是通过将map转为vector后,再来使用sort进行排序。 如下, 比较函数 主函数 阅读全文
posted @ 2018-02-25 22:02 张杨 阅读(570) 评论(0) 推荐(0) 编辑
摘要: 这题需要写三个构造函数,分别是无参,int参数,char *参数。还需要重载3个+运算符,分别对应CHugeInt+int,int+CHugeInt,CHugeInt+CHugeInt,还需要重载前置++和后置++,最后还需要一个<<的重载。代码如下: 阅读全文
posted @ 2017-12-09 10:11 张杨 阅读(3343) 评论(1) 推荐(0) 编辑
摘要: 题目如下: 这题我刚开始被示例给迷惑了,是将key和value分开输入的,类似于cin>>key>>value,这里应该是要讲每行字符串连接成一个新的字符串,然后遍历整个字符串,遇到:表示key录入完毕,遇到,和},要先判断,的情况,确定,前面没有},这是才表示value录入完毕。再就是前缀的问题, 阅读全文
posted @ 2017-11-25 22:13 张杨 阅读(1440) 评论(0) 推荐(0) 编辑
摘要: 题目如下: 这题思路比较简单,我们可以写一个检测函数func来测试一位数组中重复元素大于或等于3的情况。然后在主函数中分别对每列和每行执行func运算。 代码如下: 阅读全文
posted @ 2017-11-20 22:14 张杨 阅读(464) 评论(0) 推荐(0) 编辑
摘要: 题目如下: 网上一般是模拟方块下落的过程,这种方法简洁,易于理解,代码如下: 我刚开始的想法是,为什么不从最后一行开始,那样不是更快吗?后来我发现这个想法不对,从下往上找,要一直遍历到第0行,这样的计算量特别大。 下面,我说说自己的想法:先通过遍历找到对应方块在大矩阵中的最下面一行,然后以这个行数为 阅读全文
posted @ 2017-11-20 21:22 张杨 阅读(544) 评论(0) 推荐(0) 编辑