Monthly Archives: October 2008

[OI][Vijos 1107]环游大同 80 天

话说这题是一个搜索题。 我采用的是两次 DFS 的方法,也就是任意取一个点开始 DFS,找到这次 DFS 时深度最深的点(也就是从所选点开始最长路径的终点),然后从这一点(可以证明,这一点是最长路径的端点)开始再进行 DFS,这次 DFS 的深度就是要求的路径长度。 算法就是这样了,不过这个算法的正确性我一开始也不太确定,下面来证明一下: 大家看图: 设最长路径为 AB ,一开始任选的点为 P。取路径 PB 上的一点 Q,使得 AQ 与 PQ 只有一个公共点 Q(也就是使得从 A 走到 Q 再走到 B 不会走回头路)。设 AQ=a,QB=b,QP=s,不妨设 a<b。 要证明这个算法的正确性,也就是要证明从 P 开始的最长路径的终点一定是 A 或 B。假设从 P 开始的最长路径的终点是 … Continue reading

Posted in Information Technology | Tagged , , , | 2 Comments

网通走了,来了个流氓

网通静静地走了,来了个叫联通的。 上图: 代码是这个样子的: <html><head><!--title>... 信息推送,请等候 8 秒,或按刷新键继续 ...</title--></head><script language=JScript><!-- function killErrors(){return true;} window.onerror = killErrors; --></script><frameset rows=*><frame src=http://ent.sdinfo.net/ent/08zhuanti/081016jingjujie/index.shtml noresize></frameset></html> 嵌了 http://ent.sdinfo.net/ent/08zhuanti/081016jingjujie/index.shtml 这个网页,内容可以自己去看,最下面明确写着“中国联合网络通信有限公司山东省分公司 版权所有“。(旁边还有网 警的链接,不知道这个能举报不?) 每次开机第一个页面都是这个,你说烦不烦? 怀念网通。 Tags:CNC,network,unicom

Posted in Information Technology | Tagged , , | 3 Comments

[OI][Vijos 1214]伤心的AsukaNoKaze

这题算是个数论题。 其实也没用到什么数论结论,首先手算找找规律。发现,对于 [tex]\forall x\in (\frac{n}{i+1},\frac{n}{i+1}],x\in {\mathbb Z}[/tex] 有 [tex]n ~{\mathtt div}~ x[/tex] 为常数[tex]i - 1[/tex],于是这一区间内的数就可以只算一次,然后将结果乘以区间内整数的个数就行了。但当[tex]i>\sqrt{n}[/tex]时,每个区间的长度[tex]\frac{n}{i}-\frac{n}{i-1}\sqrt{n}[/tex]时,进行朴素的计算。 时间复杂度 [tex]O(\sqrt{n})[/tex],空间复杂度 O(1)。 算法就是这样了,刚开始写的时候 TLE 了,原因是作为循环条件的 sqrt(n) 没有提前计算出来,于是导致了很多不必要的运算,多么低级的错误…… C++ 代码在这里。 P.S. 突然想做编号是大家生日的题目,这题编号是我一个朋友的生日,自己的生日编号的题目的状态是暂不提供…… Tags:algorithm,C++,OI,Vijos

Posted in Information Technology | Tagged , , , | 3 Comments

[OI][Vijos 1059]积木城堡

一年没写代码了,这周又开始拿起我那二把刀,开始切题了…… 看到我们的小妹妹写了积木城堡这个题,于是我也从这题开始了…… 简单的 0/1 背包,渐进时间复杂度(大概)是 O(N*n*n),渐进空间复杂度(大概)是 O(N*n*n),其中 N 为城堡数量, n 为组成每个城堡的积木数。 这题有着 Vijos 的一贯传统,就是题目描述令人 confused,就这题来说,从中间抽取积木还能使城堡不倒,不得不说是有一定功力,抽出的积木就扔在一边,不能不说是浪费。其实这都可以在题目中说清楚的。 开始做,一开始用了 bitset (在 NOIP 中允许使用),结果 TLE ;后来优化了读入,还是 TLE,后来砍掉了 bitset ,用 boolean array,提交无数次后(Vijos 最近服务器有问题,运行程序忽快忽慢,随机 TLE 的现象时有发生),终于 AC 了。 代码可以看这里,其他 vijos 的代码也在那里。 事实证明, bitset 的效率并不高,竞赛的时候应远离 bitset …… … Continue reading

Posted in Information Technology | Tagged , , , | 1 Comment

记得加载模块

为了启动的时候能更快一点,我把要加载的模块直接写进了 /etc/rc.conf (方法看这里),启动确实快了。不过有的时候还是有些郁闷…… 很少用 USB flash drive,偶尔用,郁闷了,怎么看也没这个设备,只有两块硬盘,很久之后发现没加载模块,于是加载之: 1 modprobe usb-storage 又过了很长时间,用到打印机。很少打印东西,而且这个打印机比较难搞,所以导致我每次用打印机都心惊肉跳……这回直接找不到打印机了,良久之后,发现应该加载一个模块…… 1 modprobe usblp 唉…… 注意下,如果你用 2.4 内核的话,应该加载 printer 这个模块,详细的可以看 ArchWiki 的说明。 启动是快了,可是要记得加载模块啊…… 提醒下自己,下次别忘了。 Tags:Linux,module,printer,USB

Posted in Information Technology | Tagged , , , | 6 Comments