跳至正文

技术

Noip 2010 提高组 第三题 关押罪犯

  • OI路程

  这题的话,就是贪心,把最大的罪恶值的两个囚犯都不关在一个牢房里,反复的贪心,但是数据太大,不允许使用邻接表和邻接矩阵,用什么结构来保存呢?我觉得(也是网上的资料里的咯)使用动态分配是个方法,因为最多10000条边,根据实际情况来分配,这样不会有浪费的空间,也就不会导致空间爆掉了。

#include[……]

继续阅读

Noip 2010 提高组 第二题 乌龟棋

  • OI路程

  在考场上我的思想是这么的,f[n +
j] = max{当在n这个位置时还有布数为j的卡片|f[n] + map[n + j]},后来发现这么是不行的,因为f[n + j]不是最大但也可能有更好的取值,因为它可以留下另外一张卡片,只有10分呢!
  后来,我又想了另外一种算法,用一个维护一个栈,[……]

继续阅读

Noip 2010 提高组 第一题 机器翻译

  • OI路程

  纯水题,维护一个列队,作为内存列队,并且写两个操作:进列队、出列队;因为数据量十分的小(n<=1000)所以可以维护一个用于标记的数组,如果单词在列队中则置为1,不在则置为0,接着就是暴力——模拟就是。

#include <stdio.h>

int queue[[……]

继续阅读

素数统计

  • 技术

  这几天围着素数统计这一题就把我搞蒙了.. 题目是这样的: 输入一个整数n, 输出小于等于n的素数个数..
  刚开始, 觉得题目挺容易的,, 马上写了一个程序出来, 测试了一下, 结果没错.. 急急忙忙的就提交了,, 后来再把题目仔细看了看,, n的范围是1~二百万.. 时间要求时1s. 我自信[……]

继续阅读

二进制表示方式

  • 技术

  以前学C, 反码补码就是不知道什么意思, 今天看了汇编的书才搞懂`   首先呢, 说一下现在不怎么用的一点东西, 在以前有符号的数字有三种表示方法, 一种是比较常见的, 把第一位作为符号位(最高位), 然后如果第一位是0的话, 代表正数, 1的话代表负数. 我先举个例子啊,, 比如 -1的表示方[......]

继续阅读

算法: 求最长的回文字符串

  • OI路程

  最近USACO写到了(第三次)1.3.3,这一题我用的是我自己原创的一个算法(可能也有别人想到了,但是对于我来说,确实是我自己独立思考出来的),在此发表一下。
  程序:输入:一行字符串,输出:最长的回文字符的长度以及把它们给输出来。
  如:
    输入:1596156432111234
 [……]

继续阅读

Noip 2010之旅(下)

  • OI路程

  昨晚上让柜台6:30把我们闹醒,结果7点钟他们才打电话来,真是懒,幸好我起来的早,6点半不到就醒了,不然考试不就错过了。
  早早地来到考场,虽然离考试还有一段时间,但是已经有非常多的人 在哪儿等候了,老师也碰到几个熟人,聊着聊着就开考了。
  哇,这种考试就是不一样,真大啊~宽敞的机房,虽然昨[……]

继续阅读

Noip 2010之旅(上)

  • OI路程

  学校第37届运动会闭幕式刚结束, 李智老师就准备带着我去长沙了. 他先带我去和别的老师一起吃了一餐饭, 然后就出发了!

  好久没来火车站了, 发现这里比以前要好很多了, 以前我爸带我到这里, 跟我说以前是怎么逃票的, 后来好像本来是要带我逃票的吧, 好像是我良心过不去, 所以就没了, 不太记得[……]

继续阅读

Noip 2005 篝火晚会

  • OI路程

  纠结了不知道好久,最后发现题目的意思理解错了(b1, b2, ….., bm)这些b是任意选择的, 也就是说可以选择(1, 5, 7)之类的。那么把题目理解正确了就好说了,输出的就是没有站好的人数(就是位置站错了的),所以就很简单了。
  首先一个初始列队,一个目标列队(即每个人理想的左右的人[……]

继续阅读