自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

...

已是中年大叔~

  • 博客(70)
  • 问答 (1)
  • 收藏
  • 关注

原创 Swig/CPP2Java

实际工程可能存在如下部分:业务接口需要编程高效的语言(如Python、Java等),易于部署维护;而核心算法部分,某些场景需要高效计算,会使用性能高效的语言(如C/C++等)。对于上述场景,“粘合剂”工具可以将语言打包,实现跨语言调用。例如Java/Python可以使用Swig转换后的C/C++代码,Python可以使用JPype等调用Java代码。这种跨语言调用的场景能帮助我们解决例如不同语言间性能差异、存量代码等问题。

2023-01-28 15:49:56 1539

原创 coin-or/cbc多problem并行求解线程阻塞问题

Cbc是Coin-OR研发的开源MILP求解器,默认编译选项实际使用时,若在外部构建多个模型并行求解,可能会出现求解阻塞的问题。

2022-12-20 15:40:54 463

原创 Linux C/C++异常处理方法

对于异常,首要任务是进行定位,并做对应的修复。但存在一些程序,因种种原因测试不够充分,为了保证程序“不崩溃”,本文介绍几个常见的异常处理方法。

2022-11-15 17:30:42 1132

原创 Jsprit浅析

前言一个用以车辆路径规划(VRP)和旅行商问题的Java工具库。我们主要关心几个问题:1. 在这两个主场景上,它是怎么做到可扩展性的?例如基础的VRP问题可能仅是对车辆、行路做优化,但实际问题往往更复杂,例如路线中的某个地点需要加上时间点的需求(VRPTW)等。如何支撑用户自定义约束?2. 个性化配置项如何输入例如OptaPlanner是用xml的形式,配置数据(结构)、算法、参数等信息的,JSprit是如何做到的?简介简短介绍一下jsprit,更多请参考社区网站:jsp

2022-04-18 15:12:59 670

原创 Easyloggingpp(easylogging++)&CMakelist问题记录

Easyloggingpp(easylogging++)&CMakelist问题记录

2022-01-28 14:15:04 1046

原创 hadoop 中datanode无法启动

配置hadoop的信息,友情链接(ubuntu可用,更新下hadoop的版本):https://www.drweiwang.com/install-hadoop-2-2-0-debian/asda

2016-09-02 08:55:42 690 2

原创 uva 116 单向tsp

题意:给一个n行m列的矩阵,要求从第 1 列走到第 m 列,路过每个点时将该点的权值加起来,求最小权值和,并输出路径,若权值相等,输出字典序小的那一种情况。思路:紫书上的题,紫书上用递推的dp,我写了记忆化搜索的方法。实质是一样的,每次dfs保存当前节点的下一个最有路径。再通过 way[dir][i]访问。#include #include #include #define INF

2016-08-21 16:02:48 488

原创 usc oj 1615 The contest

题意:背包问题,加了一个限制条件:某几个物品会相互限制,限制的集合里的物品只能选一件思路:加一个并查集,把集合当成一个物品,像01背包那样记忆化搜索即可。#include #include #include #include #include using namespace std;struct goods{ int v,c;}g[1100];vector vc[

2016-08-21 10:17:05 547

原创 uva 1151 买还是建

题意:给n个点和每个点的坐标,q个套餐,要求n个点联通,q个套餐内可以花费c来使得所有套餐内给出的点都联通,否则需要计算点之间的欧几里得距离。思路:紫书上的题,先用kruskal求一遍最小生成树,然后枚举所有套餐的情况,每选用一个套餐,把套餐内的点之间的距离变为0(可以直接用并查集把这两个点合起来),维护最小值。#include#include#include#define ll l

2016-08-17 21:22:22 524

原创 uva 1395 苗条的生成树(最小生成树入门)

补一下图论知识...题意:给n个点,m条边,求所有生成树中:边权最大值-  边权最小值 的结果最小思路:区间做一遍最小生成树,每次记录成功的左端点和右端点,维护最小值就可以了。#include #include #include #include #define INF 0x3fffffffusing namespace std;const int MAXN = 110;

2016-08-17 13:06:58 638

原创 hdu 5839 Special Tetrahedron

题意:给n个三维点,判断能构成几个满足以下条件的点:1、至少4条边相等。2、如果刚好4条边相等,那么另外两条不相邻。思路:先将所有的点两两计算一个距离(这里可以不开方),然后将这些直线存下来,每次枚举两条相等的直线(时间复杂度会降低很多,只有在所有直线都长度都相等的情况下才会到达O(n^2),显然这种情况是很少的),然后再比较这两条直线的端点所到另一条直线的端点的距离是否和直线距离相等。当然如

2016-08-14 20:36:19 536

原创 算法竞赛入门经典第九章例题9-2 uva 437 巴比伦塔

题意:给n种砖块,每种可以随便用几次,每块有长宽高,要求把它们磊起来,求放在上面的砖块的长宽严格小于下面的砖块。思路:考虑用dp 紫书上往前翻几页有详细的解法,DAG上的最长路问题,我用了n^2的记忆化搜索,以前用先排序再dp好像可以达到O(n)的效率。#include #include #include #include #define maxn 1100using n

2016-08-13 21:10:30 613

原创 算法竞赛入门经典第九章例题9-1 uva 1025 城市里的间谍

题意:有一个间谍,在1号车站,T时间后,要在n车站会见另一个间谍。在车站容易被人发现,所以他想通过来回做列车来尽可能减少在车站等待的时间(换成和上下站不消耗时间)。求在车站等待的最少时间。思路:在某个车站上时一共有三种选择1、等1分钟;2、搭向右 的列车;3、搭向左的火车。(其中2,3不一定满足)。那么依照书上想法很容易想到dp[i][j]分别表示在第i个时间时在车站j的策略下等待的最小时间。

2016-08-12 16:53:55 813

原创 hdu 5821 ball (排序)

题意:给一个状态A问经过m次操作后能否达到B,m次操作分别给出 [l,r],在这个区间内可以随便移动里面的球(在这个区间内任意摆放)。思路:对A状态中的每个球在目标状态B中找到该球颜色出现的位置(如果有颜色相同的,在A中先出现的,对应B中先出现的先后),然后对每个区间排序。最后判整个序列时候和目标序列是否相等。一开始想着需不需要特判球颜色不匹配或者数量不匹配的状态,后来直接用下标设为0解决了。

2016-08-11 23:43:07 611

原创 hdu 5816 Hearthstone (状压dp)

比赛的时候没想出来..题意:给p,n,m三个数,分别表示敌人的血量,可抽A牌的数量(A牌可以再抽两张),可抽B牌的数量(B牌对敌人造成a[i]点伤害),问现在轮到我抽一张牌(抽了A牌后又可以抽2张,如此往复),问最后打死敌人的概率。样例:第一组:5/15(只能从15张牌里先取1张A牌才能获胜)   第二组:[(5/15) * (10/14) * (4/13)]  + [(5/15) *

2016-08-10 20:42:45 690

原创 hdu 5819 Joint Stacks

题意:模拟两个栈,多了一个合并操作思路:将合并操作后的数据扔到一个优先队列里,然后用一个指标指向不为空的栈(一开始A,B也用了优先队列,可能写搓了,tle了)#include #include #include #include #include using namespace std;struct node{ int val; int num; o

2016-08-09 22:10:02 626

原创 hdu 5813 Elegant Construction

题意:有n个点,每个点有能够到达a[i]个点,及出度为a[i],随意输出一种符合要求的方案思路:很容易想到找序列中的出度为0的节点,然后然其他非0的节点指向这个节点,并减1,之后再进行类推,直到最后出度全为0为止题目不难,注意保存答案的数组要开10^6以上。#include #include #include #define maxn 1001000using name

2016-08-09 21:58:29 403

原创 hdu 5805 NanoApe Loves Sequence (水题)

题意:n个数,把每个数都取出一遍,问相临两数之差绝对值的期望(结果要乘上n,那就是求所有差的绝对值的和)思路:找原序列3个最大的差的绝对值出来,对每个拿出的数左右之差进行比较,取大者相加。(这个方法有些冗杂,官方题解简洁。)#include #include #include using namespace std;struct node{ int dx;

2016-08-09 11:31:58 420

原创 hdu 5806 NanoApe Loves Sequence Ⅱ(二分或尺取法)

题意:有n个数,求有几个区间中第k大的数大于等于m思路:考虑枚举左端点,找一个满足的右端点,求最小满足的那个,就是二分求满足的最左端点。类似于lower_bound,可以看我以前的博客:http://blog.csdn.net/thehide/article/details/52078438以下是二分的代码:#include #include #include #de

2016-08-09 11:17:04 472

原创 ubuntu服务器mysql等常用配置命令

平时用的时候记录下来的一些,有些凌乱稍微整理了一下:1、本地ubuntu远程ssh linux云服务器:1、用linux的ssh可以直接通过ip地址访问云服务器 $ssh ubuntu@ip (ssh 服务器的用户名@ip地址)2、通过ssh可以向运服务发送文件 $scp /home/你的用户名/xampp-linux-x64-5.6.15-2-installer.run

2016-08-08 21:29:05 408

原创 hdu 5802 windows 10

题意:把音量从p调到q,若 q >= p,一直按着每次音量上升1若 q 求 p  -> q的最小时间。思路:枚举 2^tx-1 > q - p,选择降到q的下方或上方,然后逼近。做多校时由于一直想着按up要加+1所以做了两边dfs,一直tle,看了题解才恍然大悟:以下是看过标程写的代码:记录stop,停下多少次,不管有没有up,如果最终跳到q的下方,所有向上

2016-08-05 12:54:17 779

原创 线段树模板

首先感谢以下两篇博客:http://blog.csdn.net/metalseed/article/details/8039326http://blog.csdn.net/acmer_ak/article/details/52002537第一篇博客讲述了很多线段树的题目以及解答(很不错的模板),第二篇博客讲述了一个很好的思路。一、以poj 3468 为原型的一份模板

2016-08-01 22:05:17 414

原创 二分元素第一次出现的位置和最后一次出现的位置

stl里面封装了挺不错的lower_bound()和upper_bound()。但是有时候条件的判断又得自己写,所以摸索着写了两个函数,还是比较习惯 (low上界:int binsearch_min(int lef, int rig,int key,int a[]){ int ans = -1; int low = lef,high = rig; while(low

2016-07-31 14:28:41 1843

原创 hdu 5763 Another Meaning (KMP + 递推(dp))

不用kmp其实也可以过,std::string中有个strsub截取字符串函数,可以直接拿来使用,时间复杂度在O((n-m)*m),不知为啥能过。#include #include #include #include #include #include #include #include #include #include #include #include #

2016-07-29 22:33:17 415

原创 hdu 5750 Dertouzos(数论:质数枚举)

大意:求1到n内有多少个数(以下称为x),x的最大因数是d,也可以理解为x能整除d且能被x整除的最大数为d思路:分两种情况:1、当d为质数,直接枚举一个k,使得k * d = x     2、当d为合数,那么枚举的k会小于等于d的最小因子。例如k = 5,d = 12,k * d = 60。其中5*3比12大,且为60的因子(60还有更大因子),15是由5 * 3得来的,即12分解为3

2016-07-29 22:27:37 579

原创 intellij idea java环境配置及导出java web war包的一些细节

以前都用eclipse写java,现在刚拿到intellij idea时有些懵,慢慢摸索发现一些坑点:1、jdk配置网上很多教程了,不管是在linux还是其他系统中,当找到jdk后,下图蓝色框框内记得勾选下面的图中选项...2、打包成war包打开方式如下图所示:(1)点下图中最右边的按钮(2)选择Artifacts并点右边的绿色加号 ,选择蓝色选中项,右边弹出的

2016-07-27 10:01:30 7580

原创 hdu 5747 Aaronson (BestCoder Round #84 1001)

至今不懂官方题解是什么意思:答案就是popcount(n)-popcount(\lfloor \frac{n}{2^m} \rfloor) + \lfloor \frac{n}{2^m} \rfloorpopcount(n)−popcount(⌊​2​m​​​​n​​⌋)+⌊​2​m​​​​n​​⌋.rfloor   popcount是数出一个二进制数中有几个1,如0110就是2

2016-07-25 14:50:28 640

原创 poj 1654 area 简单多边形面积(简单题)

题目和描述都挺简单,注意long long 即可//此题注意连x,y都要用long long 不然在+运算的时候会溢出#include #include #include #include using namespace std;typedef long long ll; // 0, 1, 2, 3, 4, 5, 6, 7, 8, 9int dx[10] =

2016-07-24 20:29:59 603

原创 C#:网络通信(TCP)

期末的时候写课程设计和实验,在谷歌上学的。近期空暇,贴上来帮助记忆。服务端:using System;using System.Collections.Generic;using System.Linq;using System.Net;using System.Net.Sockets;using System.Text;using System.Threading.Tasks

2016-07-24 18:36:56 409

原创 C++中的<limits.h>和<climits>(C++基本数据类型的最值)

昨天有同学问到有关C++里具体数值的问题,看到还是有一点点懵的,想想网上应该能找到相关资料吧,后来发现挺少的,其实在mingw(编译文件)里可以找到limits.h这个文件,具体信息如下:/* * limits.h * This file has no copyright assigned and is placed in the Public Domain. * This file is a

2016-07-24 16:08:00 2755

原创 poj 3348 Cows (叉积计算凸包面积)

题意挺简单的,求凸包的面积然后除于50即可。面积:固定某一点,找枚举凸包中的点,用叉积求即可:#include #include #include #include #include #define PI acos(-1)#define MAXN 1000+10using namespace std;int N,L;struct point{ int x,y;

2016-07-23 20:52:58 415

原创 poj 1873 The Fortified Forest (位运算枚举 + 凸包周长)

题目链接:http://poj.org/problem?id=1873大意:有一片N棵树的森林,要从中砍掉几棵树做成篱笆,把剩下的树围起来输入:给N课树,每棵树的坐标是x,y,每棵树有一个vi和li分别代表砍掉这棵树的花费和砍掉后可做成篱笆的长度输出:被砍掉树的编号(从1开始)、把剩下的树围起来后剩下的篱笆米数。思路:暴力枚举..用01表示哪些树被砍了,维护一个可行的最小值

2016-07-23 16:41:14 421

原创 计算几何:极角排序(poj 2007 Scrambled Polygon)与简单凸包(poj 1113 Wall)

ps:好久没来写博客了..准备重新开始了、两道简单题poj 2007:http://poj.org/problem?id=2007 按照(0,0)逆时针排序,由于在-180 ~ 180之内,直接叉积极角排序即可/*将p[1]到p[m-1]的点根据p[0]按逆时针方向输出排序*/#include #include #include #define MAXN 60using

2016-07-23 10:53:33 558

原创 2016 百度之星资格赛题解(hdu 5685,5686,5687,5688,5689)

此次的百度之星资格赛,题目都比较好理解,就不再给出了。以下是AC的代码,可能存在bug,欢迎大家debugProblem A [http://acm.hdu.edu.cn/showproblem.php?pid=5685] 化简过后的题意就是求一段序列中的区间乘,由于询问次数比较多,直接求乘可能会超时,所以想到前缀乘的想法。preMulit[i]表示前i个序列的前缀乘。若要求[

2016-05-23 18:15:10 1232

转载 linux下安装android studio(看到的一些好的链接)

http://panxiecan.cn/?p=1148记得翻墙自动安装sdk失败的时候,试试这个:sudo apt-get install lib32z1 lib32ncurses5  lib32stdc++6

2016-03-27 10:37:15 1029

原创 大二上java结课实验:模仿炸弹人的小游戏

感觉写游戏还是有些好玩的,虽然没有啥参考,自己开始乱写,写着写着才发现了刚开始规划的重要性。最后由于时间的关系,勉强完成了一些功能,看看效果吧:1、开始界面:2、单人模式(AI很渣,没空写搜索。。)3、本地双人模式:一、需求分析:实现泡泡堂类似游戏的基本功能:1、地图、人物、场景的绘制2、人物可以移动、放置泡泡。泡泡可以摧毁障

2016-01-28 21:18:13 3579 2

原创 java学习:数据库的使用

一、数据库的连接,导入首先去mysql官网下载驱动包(.jar)文件,配置好路径1、导入数据库(加载驱动)Class.forName("com.mysql.jdbc.Driver");2、连接数据库(mysql) Connection conn = (Connection) DriverManager.getConnection("jdbc:mysql://host:por

2015-12-30 22:09:22 742

原创 java学习:有关DataInputStream/DataOutputStream的一些坑

最近在学习TCP连接的时候,狠狠的被DataStream坑了一把1、.close()方法会导致Socket的关闭我们经常习惯这么写:Socket mySocket = ss.accept();DataInputStream dis = new DataInputStream(mySocket.getInputStream());DataOutputStream dos = new

2015-12-29 21:43:20 4601

原创 java学习:基于TCP的网络文件传输(可改写的QQ文件传输)

由于最近要写个仿聊天程序中文件传输的内容,又学习了一下流的知识找了好久没找到很全的,后来不知道哪个地方找了个不错的客户端和服务器端的代码,自己改了下,感觉还行吧。放到博客上来帮助记忆         服务器端:package TCPexchangeFile;import java.io.*;import java.net.*;public class FileServer

2015-12-27 22:14:30 2070 1

转载 mysql的安装及一些常见的问题

不知不觉这学期都要结束了,学了好久java,终于算是要碰上感觉比较牛逼的databases了,先试了试mysql。下完mySql之后要检查一下文件夹里面有没有data文件夹。下面是两个比较好的链接:http://jingyan.baidu.com/article/597035521d5de28fc00740e6.html 常见问题链接: http://blog.csdn.net/mhm

2015-12-19 21:52:39 517

空空如也

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

TA关注的人

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