跳至正文

NOIP 1998 普及组 巧妙填数 解题报告

  很简单的一个题目,没一次AC,因为忘记判断0了,有可能出现十位或个位上有零的情况,代码:
#include <stdio.h>
#include <string.h>
int sum;
int used[10];
int ck[10];

int check(int n)
{
        int t;
   &nbs[……]

继续阅读

NOIP 2007 统计数字 解题报告

  这一题我的思路(应该)是O(nlogn)的,就是进行一趟快排加上对数组进行一次扫描。
  快排直接调用库函数,扫描就是用j记录当前自然数,c记录当前自然数出现的次数,如果num[i]和j相同,c++;不同就输出j和c,然后j=num[i], c = 1。在循环结束后还要将最后一个自然数输出。
  下面贴出代码:
#include <stdio.h>
int num[200000];

int com(const void a, const v[……]

继续阅读

NOIP 2008 提高组 双栈排序 解体报告

  • OI路程

  这个题目我的思路很简单,就是读入一个数据,判断是否小于s1的顶元素,如果是则讲数据压入s1,否则该数据是否小于s2的顶元素,如果是则将它压入栈s2。然后再判断s1的顶是否等于当前需要输出的值(就是安顺序来是不是对的),如果是就输出b。再同样判断s2,如果是就输出d。
  很可惜,只有30分,代码如下:
#include <stdio.h>
int num[1000];
int s1[1000], s2[1000];
int t1, t2;
char ans[20[……]

继续阅读

Http 服务器整好了

  • Linux

  上午9点钟起来,吃了饭就在弄昨天找到的一个Http服务器,总共只有200行不到的代码,很快就看完了,也理解了,唯一要到网上查阅一下的就是HTTP协议,大致能看懂一点,但是我想多看看。
  整了2个多小时,到近11点的时候就Ok了,把服务器弄好了,可以简单的浏览本地Html文件了,但是问题还有很多,比如子进程没有处理,让它们僵死了;还有这个程序只是用了一次读数据,内网倒不会有问题,外网的话,就不一定了,所以最好还是用循环的好。
  还有一些问题就是看Unix网络编程了,Unix网络编程前面的内容就是围绕着一个简单的程[……]

继续阅读

NOIP 2008 提高组 传纸条 解题报告

  这题我以前就看过,一直不会做,后来看到别人说双线程动态规划,我以为是多么多么的神奇的一个东西,把它看的和Linux源码一样神奇了,现在学了之后也就是简单的DP,我用的四维DP,别人都说是三维,我先用四维做,以后再考虑三维(也许不会再考虑这一题了咯。)
  我的方程如下:f[a][b][c][d] = max(f[a – 1][b][c – 1][d], f[a][b – 1][c – 1][d], f[a – 1][b][c][d – 1], f[a][b – 1][c][d – 1]) + map[a][b][……]

继续阅读

USACO 3.3.3. Shopping Offers 商店购物

  一道DP题,DP的方程很简单:
  f[a][b][c][d][e] = min(f[a][b][c][d][e], f[a – cost[0][0]][b – cost[0][1]][c – cost[0][2]][d – cost[0][3]][e – cost[0][4]], f[a – cost[1][0]][b – cost[1][1]][c – cost[1][2]][d – cost[1][3]][e – cost[1][4]]…);
  代码如下:
/
LANG: C
ID: zqynux2[……]

继续阅读

NOIP 2008 笨小猴 解题报告

  这个题目很简单,不过我也提交了两次。。问题见注释。
#include <math.h>
#include <stdio.h>
#include <string.h>
char str[101];
int count[26];

int isprime(int n)
{
        int li;
   &[……]

继续阅读

NOIP 2008 火柴棒等式 解题报告

  刚刚拿到题目感觉非常容易,第一次提交,发现把数据写错了,6是6根火柴,我写的5根。第二次提交我发现题目不止是个位的运算,还可以十位,百位。。第三次提交,AC了,不过效率太慢了,代码如下:
#include <stdio.h>
int num[10] = {6, 2, 5, 5, 4, 5, 6, 3, 7, 6};
      &nbsp[……]

继续阅读