自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 BGL自定义权重,求dijkstra

图graphBGL有3种保存图的数据结构,分别是adjacency_list,adjacency_matrix和CSR(compressed_sparse_row_graph)就是中文对应的我觉得是前向星。我觉得CSR挺垃圾的(黑一波),所以尽量不要使用(而且是不是可变图Mutable Graph,太垃圾了!)。这里主要介绍adjacency_list的使用。adjacency_list的...

2018-09-02 13:08:38 286

原创 hdu 2993 斜率问题,但是不是DP

我的模板有个要小心的地方:while (head + 1 != tail && slope(i - m + 1, q[tail - 1], q[tail - 2]))    q[tail++] = i - m + 1;  这一行,slope的第一个参数,是【马上将会push】的数字,这里也就是i-m+1。这题上fread才AC,不然死活都T。哎。getcha

2017-11-23 16:07:55 290

原创 HDU 2829 斜率DP

发现我的斜率DP模板挺不错的啊!裸题。 只不过变为了2维。 核心参考价值不大。学习斜率DP请参考我另一篇博客:http://blog.csdn.net/baidu_23081367/article/details/52077835#include #include #include #include using namespace std;

2017-11-23 14:00:22 279

原创 SPOJ Lexicographical Substring Search 后缀自动机

给定一个字符串,取出所有的子串按照字典序排序并去重后,求第K大的子串。以为自动机写错了。。后来发现是DP出的问题。 后缀自动机先告一段落,整理点东西出来吧!比赛时候出裸题,我得保证能做出来才行。#include #include #include #include using namespace std;const int CHAR = 26;const i

2017-11-22 20:24:42 212

原创 SPOJ Longest Common Substring II 后缀自动机(打印)

给无数个串,问你他们合起来的公共子串最长是多少。比人说WA10就不理解后缀自动机,我觉得我不理解后缀自动机居然AC了……1、用第一个串做出后缀自动机2、之后每一个串,都可以在自动机上跑。3、一个串,在自动机上跑,可以知道  "走到这个状态,走了几步。同时!!这个步数要取max!" 一个状态如果能到达,那么这个状态的父状态一定可达(并且一定存在步数为父状态的l

2017-11-22 17:26:04 251

原创 SPOJ NSUBSTR - Substrings 后缀自动机

考察对father链的理解……求长度为k的子串,出现次数最多的,出现多少次。然后强行询问len次, 分别为1..len。1、建立后缀自动机。2、显然我们有若干个状态(我对状态的理解不够深刻),对于主状态(就是整个串的最长链)上任意一个状态,如果到了这个状态意味着什么?3、意味着,这个状态的所有father实际上也到达了。 4、根据后缀自动机的性质

2017-11-22 13:34:55 249

原创 SPOJ LCS - Longest Common Substring (2串公共子串, 后缀自动机)

裸题。后缀自动机有个特点,就是找父节点的时候, 必定能得到父状态所表示的最长串!所以如果跳父节点的话,可以直接把当前串长,表示为父状态表示的最长串。#include #include #include #include using namespace std;const int CHAR = 26;const int MAXN = 250000 * 2

2017-11-22 11:18:37 183

原创 POJ 1509 后缀自动机

题意:求字符串最小表示。后缀自动机,拼2次的串,走len步得到的串即可。时隔1年没碰过POJ的题了。。怎么还没有C++11#include #include #include #include using namespace std;const int CHAR = 26;const int MAXN = 10000*3;char str[MAXN

2017-11-22 10:08:43 229

原创 运行结果和单线程一致的【辣鸡】神经网络。

希望一会儿做完可视化,能让我发现到底哪里出问题了居然比单线程的程序慢了100倍!#include #include #include #include #include #include "recordlog.h"#include #include "threadsafe_queue.h" //线程安全点queue#include "thread_pool

2017-10-26 19:16:04 248

原创 能解决一个判定可视范围的code,SLAM相关

换队长来写,估计20min解决。而我写了8个小时QAQ#include <bits/stdc++.h>using std::cin;using std::endl;using std::cout;struct pix{ int x, y; pix(){} pix(int a,int b):x(a),y(b){}};std::ostream&...

2017-10-14 15:12:34 234

原创 c++好用的json库 jsoncpp

官网http://open-source-parsers.github.io/jsoncpp-docs/doxygen/index.html去github下clone下代码,直接cmake ..然后make -j8sudo make install即可!使用头文件 #include编译链接一下 -ljsoncpp!超级好用!(实现大概是用ma

2017-10-12 14:55:34 2236

原创 ubuntu 16.04 libQGLViewer编译安装指南

这个库我再14.04死活弄不成啊。14.04如何成功。。先装一堆sudo apt-get install 和qt5的我随便勾了一大堆。特别是有一个qmake啥的什么的,反正都装上……然后在官网http://libqglviewer.com/index.html下载他的包。去根目录下qmake一下,生成makefile文件。接着make,sudo ma

2017-10-11 15:50:40 5276 1

原创 ubuntu16.04 下dbus-cxx Library编译安装指南

下载去官网http://dbus-cxx.sourceforge.net/index.html然后他说依赖几个库,dbus: http://dbus.freedesktop.org - Should be installed by default (runtime dependency) libsigc++ http://libsigc.sourceforge.net/ (

2017-10-11 15:44:16 1244

原创 机器学习BP神经网络,任意拓扑结构 (C++)

这次的版本更优秀了的样子!按照老板说的,每个节点是单独的导出节点(会导致sigmod训练变慢,原因sigmod层数多了,梯度会下降很快导致爆炸。)换个激活函数就行了。net表示网咯有10个节点然后input.txt里的文件格式大概是n0 11 23 4....n表示有n行,每行2个数字,表示2个点有边。(0下标开始,不超过net初始化的节点数量)。任

2017-10-06 20:26:20 1301

原创 第一次摸索机器学习……写的奇怪的神经网络(C++)

原来按照老师要求,要写一个很复杂的模拟人脑的神经网络。。最后我只写了个……翔而且老师当时的要求,没用sigmod函数……所以我就没用。然后写着写着变为BP了网络了…核心:给定一张无向图,我会随机挑选input_size个节点作为输入,output_size个节点作为输出。然后按照从高到低顺序,构造一张DAG图。然后就。。跑BP算法了。。。能训练

2017-10-02 16:31:45 421

原创 java网络通信byte转可见字符char

本来是为了传输图片的,后来奇怪的byte不好传输,只好弄成可见字符char来传输了。java前端发射,C++后台接受。我写完了JAVA,翻译成c++就只写了decode懒得写encode了。而且不想动脑子,没动用更多的位运算技巧,写了点暴力……javaimport java.awt.image.BufferedImage; import java.io.B

2017-08-22 15:30:24 549

原创 LINUX C++实现简单的http get请求客户机

我觉得我注释写的很清楚了。。g++ -o 编译即可  ubuntu 14.04#ifndef __http__#define __http__/*TODO : 连接失败后的特殊处理*/#include #include #include #include #include #include #include #include #include #inclu

2017-08-17 02:53:59 3395 4

原创 linux 下C++实现 ARP发布,和ARP监听

linux 下C++实现 ARP发布,和ARP监听

2017-08-15 21:19:54 1648 1

原创 openwrt各种奇怪问题总结(对C++依赖)

其实就是碰到怪问题了。1、首先是config,需要很好的设置2、对C++依赖。libuClibc++依赖失败,最后还是对libstdc++依赖成功3、pthread貌似在C++编译失败,用lpthread才成功回头我会上传我用的SDK以及config文件。以及里面有一个例程hello world。实际上是一个http服务器的C++代码,依赖lpthread的。 只不

2017-08-15 08:46:40 1436

原创 学习15:apt-get install重新安装MRPT

貌似又编译失败了。找不到MRPT的很多头文件。添加源sudo add-apt-repository ppa:joseluisblancoc/mrptsudo apt-get updatesudo apt-get install libmrpt-dev mrpt-apps # ONLY if you want debug -dbg packages#sudo apt-get

2017-06-22 15:41:50 2586 2

原创 学习14:安装G2O

真是日了狗了,为啥我的mapgen程序还有问题。貌似是G2O安装出的问题??!!先跑从网上搜来的东西……sudo apt-get install libqt4-dev qt4-qmake libqglviewer-dev libsuitesparse-dev libcxsparse3.1.2 libcholmod2.1.2sudo apt-get install cmake l

2017-06-20 20:08:38 828

原创 学习13:开始学习《MRPT初级教程》

其实现在疯狂吃粮学习消化不好,但是先赶工……回头再看把1 入门1.1 安装cmake这个貌似直接sudo apt-get install cmake就装好了啊……略过。但是要有gui界面的cmake还弄东西!很烦https://cmake.org/files/v3.9/cmake-3.9.0-rc3-Linux-x86_64.sh终端里找到他,执行sudo sh

2017-06-20 19:26:09 2869 1

原创 学习12:一份mapgen代码的运行方法

这貌似涉及到不少mrpt的东西。。这也是马上要看的东西了。1. G2O这个直接再https://github.com/RainerKuemmerle/g2o可以下载到再ubuntu上可以执行命令 git clone https://github.com/RainerKuemmerle/g2o.git然后再用户目录下,就回出来一个g2o的文件夹。

2017-06-20 15:37:16 445

原创 学习11:编写服务端和客户端

按照前面的理解。。服务端是一个可以调用的函数。。在这章我们看看对不对哇1 编写代码1.1 定位cd到beginner_tutorial包目录下,也就是catkin_ws/src/beginner_tutorial同时,确保之前的工作的内容没有被删除。(也就是创建过srv和msg的内容)1.2 写服务代码在beginner_tutorials/src目录下,创建add

2017-06-20 13:30:09 349

原创 学习10:消息发布器和订阅器(C++)

因为我不会python,所以只能用C++了  - -#1 节点ROS中把可执行文件叫做【节点】。去刚才的beginner_tutorial(眼花了,单词打没打错?……)目录下,新建src文件夹,里面写一个talker.cpp里面代码如下/* * Copyright (C) 2008, Morgan Quigley and Willow Garage, Inc.

2017-06-19 02:05:48 815

原创 学习9:rosed命令的简单介绍 + 创建ROS消息和ROS服务。

肛了一波四级,希望这次能过把- -# 不想收集8张4级准考证啊……用处不知道是干嘛,主要可以直接编辑某个包里的文件。1 rosed1.1 介绍使用方法如下$ rosed [package_name] 举个例子,假设我们想要编辑roscpp包里的Logger.msg文件,通常需要cd到这个里面,然后再用vim打开。这样有时候很麻烦,这里可以直接调用下面

2017-06-18 09:46:30 925

原创 学习8:roslaunch

1.rqt_console1.1 查看输出的信息运行下面的命令$ rosrun rqt_console rqt_console$ rosrun rqt_logger_level rqt_logger_level分别启动rqt_console和rqt_logger_level。 启动乌龟模拟turtlesim节点,控制乌龟动一动。会发现rqt_console里

2017-06-08 12:36:23 462

原创 学习7:ROS话题,ROS服务,ROS参数

官方文档貌似又想做小乌龟举例子……1 玩小乌龟1.1 打开小乌龟节点$ roscore先运行ROS核$ rosrun turtlesim turtlesim_node运行乌龟模拟,再额外运行能监听键盘的节点。$ rosrun turtlesim turtle_teleop_key在turtle_teleop_key

2017-06-08 01:57:05 375

原创 学习6:编译ROS程序包,和学习ROS节点

设置好所有依赖项后,就可以编译这个程序包了。1 编译ROS程序包1.1 catkin_make在catkin工作空间里,直接执行catkin_make就可以编译了。(官方教程说,相当于依次执行了cmake和make)$ catkin_make [make_targets] [-DCMAKE_VARIABLES=...]比如在之前新建的catkin_ws目录里

2017-06-07 21:08:49 1406

原创 学习5:再工作区建立和使用catkin package

1 使用catkin_make方法1.1 介绍再包的最高层目录,比如刚才的catkin_ws目录里,执行以下代码catkin_make install这等价于去build文件夹里,执行make install。这个时候catkin_ws目录下,会出现一个install文件夹。install文件夹里的东西,和devel里的东西几乎一样?官方文档说,开发时候用dev

2017-06-05 22:37:21 774

原创 学习4:创建ros工作空间和ROS包

貌似前面讲的,直接创建一个目录,执行一下catkin_make就行了?……为啥这次还要用不同的方法来创建…… 讲道理,我并不知道有啥区别…… 望大家指点。1  创建文件夹catkin_ws/src就一句命令$ mkdir -p ~/catkin_ws/src然后在catkin_ws目录下执行catkin_make就行了。2 创建ROS PACKA

2017-06-05 09:58:19 443

原创 学习3:ROS文件系统

本次学习主要为掌握很多ros终端命令。这些终端命令非常接近于linux本身的终端命令,只不过命令前面加上了“ROS”这3个字母。想象一下,我们现在是一个ROS操作系统。其他的系统文件我们都不感兴趣,我们只对ROS感兴趣。所以只使用roscd,来进入ROS系统目录下的某个包,用rospack find,来查找ROS系统下的某个包的位置……ROS_PACKAGE_PATH保存了

2017-06-05 09:44:02 326

原创 学习2:ROS工作目录的搭建

前置条件:完成学习1的所有步骤1、 配置ROS环境1.1 管理环境$ export | grep ROS执行后,发现啥也没发生。 说明所有的ROS环境变量都没有被配置。 按照官方的wiki,貌似ROS_ROOT和ROS_PACKAGE_PATH是2个比较重要的环境变量。如果啥也没发生,就需要source一些setup.bash之类的文件,

2017-06-05 09:28:03 346

原创 学习1:ROS的安装

本文仅供参考,本人处于学习阶段,做一些笔记和理解,并不能保证正确性~ 欢迎大牛指出。种种原因。。决定了走上slam之路?ubuntu安装不再多说,装好14.04即可。然后参考http://wiki.ros.org/cn/indigo/Installation/Ubuntu实际上就可以解决所有问题了。1 前置条件:1.1、ubuntu 14

2017-06-05 08:35:01 324

原创 SPOJ TO THE MOON 主席树(有动态修改)

SPOJ TO THE MOON 主席树(有动态修改)

2016-11-07 21:31:06 651

原创 HDU 4417 水题 树状数组

HDU 4417

2016-11-07 14:31:01 268

原创 SPOJ 10628 Count on a tree 主席树 附数据生成器

很奇怪的题啊,感觉思路和别人一样,但是我得用快速IO才能AC……不然就T没用快速output,只用了快速input而且居然限制代码长度。。。代码要短于6000B,我改了好久啊题目大意:给一棵树,每个节点有权重。问a节点到b节点这条边上的的所有数字,第k小的树是什么数字。思路:以1号点为根节点,然后从节点i到节点1之间的所有数字,构建线段树

2016-11-04 17:01:26 566

原创 HDU 5957 线段树 附数据生成器

题目大意:给一个树,然后再随便再多连一条边,形成一个带一个环的树。一开始,所有树的节点的权重为0有2个操作。操作1: 距离结点u距离小于k的所有节点,权重+D操作2:询问距离节点u距离小于k的所有节点的权重之和。思路: 先假设题目的图只是一棵树,找一个根节点,BFS一下,dfn[i]表示i节点的BFS时间序列。 可以看出,每个节点的所有儿子的

2016-11-02 09:22:53 949

原创 poj 3155 01规划->最大密度密度子图->最大流

对于求最大密度子图,就是求max{|E|/|V|}然后就可以写为a(x)为所选的边,b(x)为所选的点。(边显然是点的导出子图)然后a(x)>0,b(x)>0,也是显然的条件。然后就可以改为和01规划一样,求 f(g) = max{a(x)-g*b(x)} ,这个函数是单调递减的。当f(g)=0能取得最优解(证明略)然后这都是论文的内容。。然

2016-09-04 15:23:02 446

原创 NOI2006 最大获利

最大权闭合图。按照经典构图法:权重为正的,S连这些点,流量为那个数字。权重为负的,这些点连T,流量为权重绝对值。跑最大流。然后S所在的割集,就是选中的所有的点。这段代码就是遍历从S出发的集合,然后把她们权重加起来(cost传递的就是权重,cost[i]表示i的权重。 S的权重为0) queueq; void doit(int cos

2016-09-02 10:40:18 269

空空如也

空空如也

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

TA关注的人

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