Avatar_small

ruby字符串eval

在任务分发系统中,任务的内容使固定的,但是ID是根据时间动态生成的,一开始任务是在发送之前拼装的。后面任务的种类增加了,有的任务ID需要出现2次,发送前拼装就显得捉襟见肘了。ruby的string eval正好可以解决这个问题。先生成pattern,在执行的时候,用相应的需要替换的内容填充。用模式匹配,然后替换也可以,但是这样对于任务种类增加的时候,需要随之进行修改。 direc...

Avatar_small

【BZOJ2007】【Noi2010】海拔【最小割+最短路】

语文挂科了,所以来除草了。 program p2007; type d=record w,po:int64; end; bian=record next,point,w:int64; end; var b:array[1..1000000] of bian; i,j,n,k1,k2,len:longint; ...

Avatar_small

求不相交的两个子数组的最大连续和

求一个数组的两段连续的部分的最大和,例如1,-2,2,3,-4,结果就是6,第一段就是1,第二段就是2,3。而数组-2,3,-1,2,-5,-6,7,-3,4,-9,2,1,第一段是3,-1,2,第二段是7,-3,4,结果就是12。 这个其实就是数组最大连续和的扩展问题,经典DP问题。求最大连续和并不难,我们只需要遍历数组一次,并用一个dp[i]函数记录从数组开头到第i个元素的...

Avatar_small

编译GAMESS(US)

配置gamess GAMESS(不是GAMES)的简介: https://en.wikipedia.org/wiki/GAMESS_(US) GAMESS的source code是可以免费取得的,不过在distribution上有限制,所以不叫自由开源。在以下页面填入自己的邮件地址取得下载密码: http://www.msg.chem.iastate.edu/GAM...

Avatar_small

通过 UDP 打洞连接 NAT 后边的 mosh

又是一篇关于 UDP 打洞的文章。之前写过关于在完全圆锥型(full cone)NAT的文章中如何使用 socat 命令打洞。根据那篇文章里的知识,连接到一个 full cone NAT 后边的 mosh 不成问题。不过,我现在的网络是受限圆锥型(restricted cone)NAT 了呢! 也就是复杂了一些。双方要向中间服务器和对方都发送数据包才可以。另外就是,客户端(mo...

Avatar_small

debian配置vsftp遇到的问题

1,因为vps网络问题在/etc/vsftp.conf里面多按了个x去掉了一行注释,结果 root@569692:~# service vsftpd restart Stopping FTP server: No /usr/sbin/vsftpd found running; none killed. vsftpd. Starting FTP server: vsftpd....

Avatar_small

GM 脚本:在 Disqus 中提示需要登录

Disqus 越来越受欢迎,然而,非 Disqus 用户评论越来越艰难。 一开始,和 WordPress 一样,名字、电邮、网站。想要新评论通知?好呀,使用 Facebook、Twitter 或者 Google+ 登录下就好。 后来,「Twitter 用户,创建个 Disqus 帐号吧!」不想要 Disqus 帐号,那就不要登陆了,也甭想推广自己的博客,填上电邮地址显示...

Avatar_small

css画箭头的两种方式

前端开发的时候,悬停弹出层经常会有小箭头。分享两种常见箭头实现方式。 1. 用边框做类似 .arrow1 { width: 0; height: 0; overflow: hidden; zoom: 1; border: 8px solid transparent; border-top-color: #FFF; } 将元素大...

Avatar_small

repr与str的区别

help(repr): repr(...) repr(object) -> string Return the canonical string representation of the object. For most object types, eval(repr(object)) == object. 返回对象...

Avatar_small

redis键复制

redis并没有提供key的复制命令,但是可以通过redis提供的lua脚本实现。 require 'rubygems' require 'redis' r = Redis.new KeyCopyScript = <<EOF local max_key = tonumber(ARGV[1]) local...

Avatar_small

jQuery delay()

If there's an object whose id = "svg1" && type = "image/svg+xml" in html, jQuery can be used like this to access its elements:

Avatar_small

采用Python编写Tecplot ADDON [01] GUI的问题

采用python写teccplot addon时,GUI是一个问题。tecplot自己带的python是2.5版(据说最新的tec360 13已经是基于python 2.7了),因此内含的GUI库只有Tkinter。Tkinter控件太少了,连下拉式选单都没有。Pmw实现了更多控件,于是打算手动安装Pmw到tecplot的python中。 方法很简单,找到一个Pmw(...

Avatar_small

Word Break (C++)

要首先挑dict里面长的string进行匹配,不然容易超时。对unordered_set不太熟,就用vector<string>排序了一下dict. 对于sort,自己写个比较函数也行,注意要是static,否则会报错,显示cmp的参数不对。因为这是在class里,有一个隐含的this参数,而sort的比较函数是默认没有这个参数的,这一点还是宋大牛指出的。 ...

Avatar_small

java 异常处理

现在大多数高级语言都支持异常处理机制,而C语言是根据返回值(一般是定义为宏的整型数,如EXIT_FAILURE)判断错误类型加上goto语言处理异常,在linux内核中有大量goto语句的出现。而java支持异常处理,异常会改变程序运行顺序,也就说改变程序顺序的有if语句(循环也算是间接的if)、函数调用(或方法调用)和return语句、异常等。首先看一段代码: OutputSt...

Avatar_small

为 Help Manual 创建内容模板

什么是 Help Manual Help & Manual Pro是一款非常专业、强大的帮助文件制作工具,采用纯XML格式的所见即所得编辑器,因此用起来跟通常的文字处理器没什么不同,支持CHM、PDF、RTF、EXE电子书等格式的输出。 Help & Manual采用Office 2007风格系列的界面环境,所有需要的工具都很容易在这个环境中获得。 ...