跳至正文

NOIp 2006 提高组 4 2^k进制数

  这题我以前写过的,现在就当是再温习一遍吧,思路就是递推(也就是动态规划)根据一个公式推导出来的DP方程,首先我用f[i][j]表示第i位数以j开头的数字共有多少个,那么最容易得到的一个转移方程是:
  f[i][j] = f[i – 1][j + 1] + f[i – 1][j + 2] + ……. + f[i – 1][n&n[……]

继续阅读

Noip 2006 提高组 3 作业调度方案

  大部分OJ的题目全部都少了一些,原题见
  http://zqynux.blog.163.com/blog/static/167499597201062811365761/
  就是简单的贪心,但是要考虑的是首先,A任务的工序2必须在工序1之后完成,而且当满足前面一个条件时(工序2必须在工序1之后完成),尽可能的把任务向前面插:

Noip 2006 提高组 3 作业调度方案 - NeWorldMaker - My S-K-Y
   代码如下:
#include <stdio.h>
#define max(a, b) ((a)>(b)?(a):(b))
int order[[……]

继续阅读

NOIp 2006 提高组 2 金明的预算方案

  首先要考虑的是,如果没有主件和附件的话,那题目将会非常的简单,那这就是最简单的01背包了,但是麻烦的是题目有主件和附件。那我们怎么办呢?不做了?开玩笑,既然你走了OI这条路,那就千万别回头!那我能不能用01背包来处理这个题目呢?当然是能的,注意题目中的这句话“每个主件可以有0个、1个或2个附件。附件不再有从属于自己的附件。”额,这个条件有什么用呢?当然有用啦,那么我就可以转化为01背包了,先只考虑主件,那就可以进行01背包了,然后对每个主件进行记录,每个主件拥有多少个附件,哪些附件,然后再进行动态规划就能解决了[……]

继续阅读

NOIP 2006 提高组 1 能量项链

  因为以前做过这一题,所以很快就写出来了,不过在一个细节的地方纠结了好久,具体位置见注释。
  思路和以前是一样的,f[i][j] = max(map[i] map[i + a] map[i + j] + f[i][a] + f[i + a][j – i]); f[i][j]表示从第i个珠子往后j个所能获得的最大能量,然后代码就写出来了:

#include <stdio.h>
int n;
int map[200];
unsigned f[100][101];

void[……]

继续阅读

NOIp 2007 提高组 4 树网的核

  这个题目网上有很多题解,不过直接照抄的话确实不太好,我还是说说我自己的过程吧。
  首先,可以知道的是“核”越长越好,确实说不太清楚,看下面的图吧:

NOIp 2007 提高组 4 树网的核 - NeWorldMaker - My S-K-Y
   如果核是A-B的话,A-B距离X的值为B到X的距离,假设为x,即B至X的距离,但是如果核是A-C的话,那么A-C距离X的值就会小于x,所以“核”还是越长越好!
  后只需要从一条直径上寻找核就可以了,为什么的话,我觉得吧,最好的“核”选择有两点,第一点如上所述,越长越好;我觉得第二点就是越靠近中点越好,至于为什么的话,你自己想想,中点距离所有点的最长距离[……]

继续阅读

S-K-YServer beta版发布

  • 技术

  此次发布的版本,已经成为真正的服务器雏形了,按照Liun的话,成功独立出线程池,以后写Ftp服务器阿,写一些本地的文件处理阿,之类的都能够直接调用线程池中的函数了,也就是说线程池完全独立出来了,和服务器已经没有直接的关系了,惟一的关系就是服务器要调用线程池的函数。

  这一次将线程池的锁分配到线程,每个线程一把锁,然后用两个列队来报存正在工作的线程和空闲线程,当然,每个列队自身也有一把锁,不然不久K.O.了。
  然后本次升级提升了服务器的健壮性,当遇到非HTTP协议时不会自动退出了(我自己写了个客户,只是连接服务[……]

继续阅读

Ubuntu WebQQ桌面化

  • Linux

转自Ubuntu中文官方..
桌面化webqq可实现将webqq最小化到通知区域并且来消息时提示

1.安装google chrome浏览器

2.安装alltray sudo apt-get install alltray

3.新建一个启动器,名称随便,命令为 “/usr/bin/alltray” -t 5 -s /opt/google/chrome/google-chrome –app=”http://web.qq.com

4.若来消息不提示请参考会员wobu的文章 http://forum.ubuntu.or[……]

继续阅读

网络的漏洞

  • 技术
  我先有话在先,我现在15岁,高一,只是对Linux, Unix有些爱好,如果说的什么都不是千万不要喷。。
  我是在看Unix网络编程 第一卷 第三版 38页的时候想到的一个思路,当然我不可能实现咯……就是说TCP在关闭时会有一个TIME_WAIT状态,这个状态是为了两个理由存在的:1,实现可靠的TCP全双工连接的终止;2,允许老的重复分解在网络中消逝。看到这里和下文我就想了,数据被传输是通过路由的对吧,也就是可以表示成:
网络的漏洞 - NeWorldMaker - My S-K-Y
  (我习惯的画图工具Flash 没装, 就用的Windows 7的图画工具)
  这样是没有[……]

继续阅读

TYVJ 第三题 滑雪 解题报告

  • OI路程
题目:
背景 Background
  成成第一次模拟赛 第三道
描述 Description
    trs喜欢滑雪。他来到了一个滑雪场,这个滑雪场是一个矩形,为了简便,我们用r行c列的矩阵来表示每块地形。为了得到更快的速度,滑行的路线必须向下倾斜。
  例如样例中的那个矩形,可以从某个点滑向上下左右四个相邻的点之一。例如24-17-16-1,其实25-24-23…3-2-1更长,事实上这是最长的一条。
输入格式 Input Format
  输入文件
第1行: 两个数字r,c(1&lt[……]

继续阅读

TYVJ 第二题 第K极值

  • OI路程
  思路很简单, 将数据进行一次排序, 取第t个和倒数第t个, 然后倒数第t个减去第t个, 再判断差是否为素数..
  听前辈们说NOIp不能使用库函数qsort, 而我一老使用, 为了避免考试0分的情况, 这里就自己写了一个快排, 当快拍的元素少于15个时就使用插入排序进行排序.
  代码如下:
#include <stdio.h>
#include <math.h>
#define swap(a, b) do{\
    &nbs[……]

继续阅读