- 博客(70)
- 收藏
- 关注
原创 cross compile toolchain for arm/android
基本信息:export CROSS_HOST="$(echo $MACHTYPE)"export CROSS_TARGET="arm-jkphone-linux-gnueabi"export CROSS_ROOT="$(pwd)/cross-tools"我把手机的
2011-08-10 22:42:01
2332
1
原创 边属于所有最小割交集或并集的充要条件
这个问题以前一直没纠结清楚,今天早上跟风哥和Tim讨论的时候,突然想清楚了。。一条边属于所有最小割的并集等价于其容量减少1后最大流减少1,同时等价于在某个最大流残量网络中,该边的起点无法到达改边的终点。一条边属于所有最小割的交集等价于其容量增加1后最大流增加1,同时等价于在某个最大流残量网络中,原点可到达该边的起点,该边的终点可到达汇点。证明略
2011-03-03 20:03:00
1619
1
原创 C++中一个危险的地方
<br />以下程序可以编译并运行,不过加上注释的那几行就编译不过。。不解释了。。<br />经过g++ 4.4.3 和 g++ 3.3.6测试<br />#include <cstdio>class X{ public: X() : m_id(m_tot_id ++) { printf("X #%d constructed./n", m_id); } ~X() { printf("X #%d destructed./n", m_id); }
2011-02-01 10:15:00
820
1
原创 ndiswrapper 终于正常工作了
<br />自从内核升级到2.6.30后,ndiswrapper一直不能正常工作,而开源的b43驱动又一直不太给力(Network controller [0280]: Broadcom Corporation BCM4312 802.11b/g LP-PHY [14e4:4315] (rev 01))。<br />今天终于解决了这个问题:<br />内核配置中,把SSB编译成模块(Device Drivers/Sonics Silicon Backplane),如果要用ndiswrapper,就rmmod
2010-12-21 20:16:00
628
原创 poj系统交题脚本
<br />无聊时yy出来的无聊的东西。。。<br /> <br />适用于poj系统,这个是衡阳八中oj用的,其它poj系统稍作修改即可。。<br /> <br /> <br />#!/bin/bash -e<br />username='xxx'<br />passwd='xxx'<br />browser="firefox"<br />if [[ ! -r $1 ]]<br />then<br /> echo "Usage: $0 <source-file>"<b
2010-07-27 11:23:00
907
原创 maxima求递推式数值解
<br />我在网上找了一圈都没解决,突然发现这是一个弱智问题。<br /> <br /> <br />例如f(n)=f(n-1)+f(n-2),f(0)=1,f(1)=1,求f(5):<br />$ rmaxima <br />Maxima 5.18.1 http://maxima.sourceforge.net<br />Using Lisp SBCL 1.0.28<br />Distributed under the GNU Public License. See the file COP
2010-07-26 18:04:00
987
原创 HNOI 2010 bounce 弹飞绵羊
<br />这道题用动态树实现还比较简单,这是我第一次写动态树,发现常数还是没有传说中的那么大,而且比较好写。<br />/* * $File: bounce.cpp * $Date: Fri Jul 09 17:30:49 2010 +0800 */#define INPUT "bounce.in"#define OUTPUT "bounce.out"#include <cstdio>#include <cassert>namespace Solve{ const
2010-07-09 17:38:00
2500
2
原创 Baltic 2010 Candies
<br />http://www.cppblog.com/jsn1993/archive/2010/05/21/116026.html 上有一个很不错的方法,但可惜最坏情况下区间数还是O(n)级别的(b[1], b[2], ..., b[i]分别为2^i,后面的都取7000, 则所有偶数都可以组合出来,奇数都不可组合出来),因此其动规还是O(N^3)级别的。如果分组优化,把每组的大小设为(sqrt(n*4+1)+1)/2,可以把最坏情况的复杂度降至O(n^2.5)。<br /> <br />后来看了官方题解
2010-06-30 09:53:00
947
2
原创 对那个IOCCC程序的进一步分析
<br />在去年暑假,曾经尝试过化简该程序,最终以失败告终;昨天晚上没事干,又把它拿了出来,终于成功化简了。。<br /> <br />原程序:<br />#include <stdio.h>main(t,_,a)char *a;{return!0<t?t<3?main(-79,-13,a+main(-87,1-_,main(-86,0,a+1)+a)):1,t<_?main(t+1,_,a):3,main(-94,-27+t,a)&&t==2?_<13?main(2,_+1,"%
2010-06-19 11:41:00
1065
1
原创 通过内嵌汇编把堆空间作为栈空间使用
相信搞过OI的都遇到过递归栈溢出的情况,一般的解决方法无非两种:改变算法或者强行手动模拟栈。今天突发奇想,发现了一种另类的解决办法:内嵌汇编语句,改变esp指针,使用一个预先申请好的全局数组的空间作为栈空间使用。一个例子如下:#include int func(int n){ if (n >= 1; return a;}const int N_MAX = 10000000;int main(){ static int stack[N_MAX * 5], bak; as
2010-06-12 17:33:00
2871
3
原创 NOI 2006 - 神奇的口袋 Bag
题目描述:输入:输出:(样例略)今天有同学问到这道题,我记得很久以前做这道题时用很优美的方法证明了一下,但今天仔细一想,却又纠结了(当时可能是伪证)。然后,今天花了半个上午+一个下午+半个晚上在这道题上,最后发现是基本的概念理解问题……对于第i次选择,若不存在xj=i,称其为自由选择(自由取球);否则称为定向选择(定向取球)。先可以证明一个结论:连续的自由选择对各球被选中的概率无影响(引理1)。证明如下: 用随机变量x[i][j]表示第i次取球后,颜色为j的球的个数,N[i]表示第i次取球后球
2010-06-10 20:58:00
2239
原创 POI 2006 Met-Subway
SubwayMemory limit: 128 MB A certain city has been coping with subway construction for a long time. The finances have been mismanaged and the costs have been underestimated to such extent that no funds were foreseen for the purchase of trai
2010-06-09 20:11:00
1570
1
原创 Google codejam 2010 Round 2 :: Grazing Google Goats
考试的时候只写了处理两个圆的,最后一刻写完的,交上去WA了。。后来才知道,要用long double看了Google的题解,发现其方法确实很不错。Google提出了两种方法,都是O(n logn)的: 1、通过inversion变换,转化成半平面求交的问题。inversion变换我以前确实没听说过,开了眼界了。。 2、由于所有圆过公共点,把圆心按极角排序后,用一个栈维护以Q为原点的极坐标系中,在某个极角区间内最近的圆是哪个。我实现了方法2,程序并不长,但写的时候感到有些纠结,幸好一次AC,要不还没法
2010-06-06 17:26:00
696
原创 任务安排 jobs
<br />题目:<br />任务安排(jobs.c/cpp/pas/in/out)<br />时限:每个测试点2 秒<br /><br />问题描述<br /> 小Y 最近遇到了一个棘手的问题。她有两项任务需要完成,其中第一项任务是重复操作1(op1)S1 次,第二项任务是重复操作2(op2)S2 次。为了完成这些任务,小 Y 雇佣了N 名工人。其中,第i 个工人完成op1 所需时间为T1,i,完成op2 所需时间为T2,i。每个op1 和op2 都只能被一名工人完成,每名工
2010-06-03 16:40:00
1056
2
原创 膜拜Tim神程序。。
#include #include #include #define MAXN 100#define INFINITE 1000000000using namespace std;char horizontal[MAXN + 1], vertical[MAXN + 1];int cost_horizontal[MAXN + 1], cost_vertical[MAXN
2010-05-16 20:25:00
884
原创 NOI 2004 沙丘 dune
首先,由于已访问的每个点的度数都是已知的,可以通过记录从根到当前点的路径上每个点所走的弧的编号(设为cur_arc[path[i]],i为深度)来回到根结点(walk(degree[path[i]] - cur_arc[path[i]]))。如果原图是一棵树,可以直接做,相当于模拟DFS。(因为树上DFS只要不走通往父节点的边,就不必判重)。 下面考虑如何判断环,并记录下相应的后向边:
2010-05-14 19:34:00
1098
原创 NOI 2005 智慧珠游戏 zhzyx
使劲搜索,判了一下连通块(大小 /* * $File: zhzyx.cpp * $Date: Thu May 13 16:03:53 2010 +0800 */#define INPUT "zhzyx.in"#define OUTPUT "zhzyx.out"#include #include #include namespace Solve{
2010-05-13 16:06:00
4662
原创 noi 2005 序列维护 sequence
从昨天晚上调到现在,终于发现问题所在了:tree[0].par被修改过,而我默认其为0.。。。。。。。。 大囧 /* * $File: sequence.cpp * $Date: Thu May 13 08:54:30 2010 +0800 */#define INPUT "sequence.in"#define OUTPUT "sequence.out
2010-05-13 08:59:00
1086
2
原创 NOI 2008 奥运物流 trans
首先应从题目条件中得到1号点一定在一个环中,并且有且仅有一个环。容易证明R(1)的计算公式: 其中,d(i)表示点i到1号点的距离,len表示环的长度。 利用该公式,可以证明如果修改某个点的后继,一定是把它的后继改为1号:首先应明确,由于k<1,公式中的的d(i)、len均越小越好。点x不在环上,则修改x的后继后,公式中len不变,
2010-04-30 15:33:00
2553
原创 racing一题的分析
据说是WC2007的题目,大意是给你有n个转折点的不自交折线,折线上的速度为Va,其余地方速度为Vb,求从起点到终点的最少耗时。有一个讲解的PPT,提出的方法基于“路径上的转折点只会是端点或极值点”这一结论,但PPT中未见详细证明,昨天我想了一天,终于比较详细地证明出来了,但还是不够严谨。
2010-04-24 16:37:00
621
原创 collect一题的分析
有n 种不同的邮票,LS 想收集所有种类的邮票。唯一的收集方法是到同学SY 那里购买,每次只能买一张,并且买到的邮票究竟是n 种邮票中的哪一种是等概率的,概率均为1/n。但是由于SY 也很喜欢邮票,所以LS 购买第k 张邮票需要支付k 元钱。现在LS 手中没有邮票,LS 想知道自己得到所有种类的邮票需要花费的钱数的期望。 不想打字了,就传个手写
2010-04-24 16:32:00
569
原创 同余方程组有解的条件
记号与约定: gcd(a, b):a与b的最大公约数 lcm(a, b):a与b的最小公倍数 x == a (mod m):x与a关于模m同余 x == a1 (mod m1), x == a2 (mod m2) 有解的充要条件是 gcd(m1, m2) | (a1 - a2),并且: 设其中一个特解为x0,则通解为 x = x0 + k * lcm(m1, m2)
2010-04-08 19:19:00
4801
原创 jhbuild 编译 gtk+ 时错误排除
最近想用jhbuild在lfs上编译一个gnome 2.28,其间出现了不少了错误,都通过各种方法排除了;但编译到gtk+时,出现类似如下信息的编译错误: ./.libs/libgtk-x11-2.0.so: undefined reference to `g_test_bug_base 用各种猥琐方法都没解决。。最后绝望中查到一篇帖子,最后一楼如下:
2010-01-27 19:55:00
859
原创 搞爆编译器的代码
pascal:{$inline on}procedure a; inline;begin end;procedure b; inline;begin a;a;a;a;a;a;a;a;a;aend;procedure c; inline;begin b;b;b;b;b;b;b;b;b;bend;procedure d;
2009-10-05 17:47:00
1506
6
原创 对一个IOCCC获奖程序的研究
该程序的源代码最初是在matrix67的blog上看到的:#include main(t,_,a)char *a;{return!0<t?t<3?main(-79,-13,a+main(-87,1-_,main(-86,0,a+1)+a)):1,t<_?main(t+1,_,a):3,main(-94,-27+t,a)&&t==2?_<13?main(2,_+1,"%s
2009-08-27 20:53:00
670
原创 字面字符串的连接
以前有一次想写一个宏,用于在字符串前面加一个东西,但一直没弄出来。现在才发现, "a" "b" 是可以看作一个字符串并通过编译的,相当于"ab"。
2009-08-24 21:19:00
411
原创 GTK+-2.0 Hello World autotools版
src/main.cpp:#include /* This is a callback function. The data arguments are ignored * in this example. More on callbacks below. */static void hello( GtkWidget *widget, gpo
2009-08-24 17:46:00
698
原创 暴力裸搜,要稳、准、狠
无数次的愤怒后,决定裸搜sgu 125,结果23ms AC... /* * $File: 125.cpp * $Date: Thu Aug 20 22:28:36 2009 */#include namespace Solve{ const char *NO_SOL = "NO SOLUTION"; void solve(FILE *fin, FILE
2009-08-20 22:32:00
1141
原创 发现了,为何RuntimeError。。。
sgu 125 让我快要崩溃,写了一个很纠结的搜索(搜的是给个方格间的大小关系,最后拓扑排序),每次交上去都Runtime Error on test 1,愤怒了,写了一个取数据的程序,如下: /* * $File: getdata.cpp * $Date: Thu Aug 20 21:15:23 2009 * ID: 036102 * PASS: 123456 */
2009-08-20 21:06:00
2566
原创 fscanf 效率不高?
SGU 122总是超时,甚至把DD大牛的标程交上去还是TLE…… 最后改了一下读数据的方法,如下: for (int i = 0; i < nvtx; i ++) { fgets(line, LINE_LEN_MAX, fin); int x = 0; for (char *ptr = line; *ptr; ptr ++) {
2009-08-20 11:57:00
1013
原创 SGU,人品测试器
document.body.oncopy = function() { if (window.clipboardData) { setTimeout(function() { var text = clipboardData.getData("text"); if (tex
2009-08-20 11:56:00
733
原创 SGU,无语……
document.body.oncopy = function() { if (window.clipboardData) { setTimeout(function() { var text = clipboardData.getData("text"); if (tex
2009-08-20 11:55:00
471
转载 小故事……
document.body.oncopy = function() { if (window.clipboardData) { setTimeout(function() { var text = clipboardData.getData("text"); if (tex
2009-08-20 11:52:00
398
转载 贝塞尔曲线
<!-- document.body.oncopy = function() { if (window.clipboardData) { setTimeout(function() { var text = clipboardData.getData("text"); if
2009-08-20 11:51:00
486
原创 Usaco 战役结束
<!-- document.body.oncopy = function() { if (window.clipboardData) { setTimeout(function() { var text = clipboardData.getData("text"); if
2009-08-20 11:49:00
481
原创 C++ 中初始化数组类成员
<!-- document.body.oncopy = function() { if (window.clipboardData) { setTimeout(function() { var text = clipboardData.getData("text");
2009-08-20 11:47:00
2496
2
原创 一个囧问题的解决
document.body.oncopy = function() { if (window.clipboardData) { setTimeout(function() { var text = clipboardData.getData("text"); if (tex
2009-08-20 11:44:00
511
原创 裸干usaco prime3
document.body.oncopy = function() { if (window.clipboardData) { setTimeout(function() { var text = clipboardData.getData("text"); if (tex
2009-08-20 11:44:00
1566
原创 不死的Linux
document.body.oncopy = function() { if (window.clipboardData) { setTimeout(function() { var text = clipboardData.getData("text"); if (tex
2009-08-20 11:42:00
542
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人