- 博客(78)
- 资源 (2)
- 收藏
- 关注
原创 【总结】搜索的剪枝二分预处理和离散化等优化
送给圣诞夜的贺卡位运算加速,因为集合的总元素个数较少,可以用位运算加速。降序排序,使得越到后面S降得越快,让最后S很小,(参考黑书的剪枝那一节),因为到一般剪枝都在搜索的深层,所以容易被剪掉。反之,如果升序排序,则后面的S仍较大,不容易满足if (sum + S[u] 极限化,如果剩余的都以最优情况决策,得到的解如果仍然不满足题意,则可以剪掉,达到加速。手动调整决策方向,如此题
2012-10-29 20:43:34 625
原创 【贪心\最大连续区间和】游览路线
求最大连续区间和的水题#include #include #include #include #include #include #include using std::min;using std::max;long getint(){ long rs=0;bool sgn=-1;char tmp; do tmp=getchar(); while (!isd
2012-10-29 19:09:19 543
原创 【找规律】悟空学艺
这个写出几行,然后排列整齐之后,可以发现,每一行都是由上两行“拼接”而来,而每一行的桃子数,刚好是与这一行长度数字的前一个斐波拉契数。#include #include #include #include #include using std::lower_bound;using std::cout;using std::cin;typedef unsigned lo
2012-10-29 19:07:20 877
原创 【逆序对】序列
这个很简单,就是归并排序求逆序对。但是要小心,a[l1] 虽然两个相等,交换也无所谓,但是统计等于并不是逆序,答案会改变。#include #include #include long ans = 0;long a[50010];long b[50010];long getint(){ long rs=0;bool sgn=1;char tmp; do tmp
2012-10-29 19:04:44 764
原创 【次短路】赛跑
PROBLEM 4 赛跑 问题描述:Yali校运会又开始了。这次校运会设置了一个有趣的项目,就是在田径场设置了很多障碍,并且在障碍之间设置了跑道,要求同学们从第s个障碍,以最快的速度跑到第t个障碍,当然不一定每个障碍都要经过。如果把每个障碍看成一个点的话,那么这个项目就可以抽象成一个n个顶点,m条有向边的图。当然每个人都想走最短距离,QQ想,那么走最短路有多少种方案呢?Q
2012-10-29 19:00:41 663
原创 【动态规划】睡觉
PROBLEM 3 睡觉 问题描述:为了提高程序解题能力,勤奋努力的QQ天天锯题到深夜,导致睡眠严重不足,可NOIP决赛就要来临了,必须要有良好的状态才行啊,因此QQ决定准备拿出一天时间,好好补补觉。他把这一天等分成了n个时间段,在每个时间段睡觉能获得精神点数不尽相同,在第i段时间能获得V[i]的精神点数。由于勤奋的QQ觉得整天都睡太堕落了,他决定最多只能睡m个时间段。至于其
2012-10-29 18:57:30 690
原创 【动态规划】石材切割
PROBLEM 2.石材切割 问题描述:某人得到一块N*M个小格的矩形石材(可能是玉石),经专家分析,把这个矩形石材的每个小格都有一个价值(使用一个绝对值不大于10的整数来描述),现在将这块石材切割成两块矩形石材,注意,切割只能与该矩形边平行,也就是说不能把矩形的小格切碎,假设每块矩形石材的价值为该矩形中所有小格子价值之和。 问怎样切割,才能使得这两个矩形的价值乘积最大。如下
2012-10-29 18:42:35 2351
原创 【动态规划】ski lift
题目描述建造滑雪场的升降轨道。起点和终点的高度已知,x坐标分割成若干份,间隔为1,每一点都给出支架的高度。要选择尽可能少的支架顶端建立固定点,两个固定点之间用一条直钢轨连接,当然要求中间支架的高度都不能超过钢轨在那里的高度。而且两个相邻固定点之间的距离不能超过给定的K。[输出说明]可以选择第1、5、7、9、13个支架作为固定点。而且至少需要5个固定点。输入格式第一行是N和K,2
2012-10-29 17:51:01 894
原创 【二分\最短路】架设电话线
3、架设电话线(phoneline) 【题目描述】 Farmer John打算将电话线引到自己的农场,但电信公司并不打算为他提供免费服务。于是,FJ必须为此向电信公司支付一定的费用。 FJ的农场周围分布着N(1 第i对电话线杆的两个端点分别为A_i、B_i,它们间的距离为L_i (1 经过谈判,电信公司最终同意免费为FJ连结K(0 请你计算
2012-10-29 13:38:58 915
原创 【动态规划】贝茜的晨练计划
2、贝茜的晨练计划(cowrun) 【题目描述】 奶牛们打算通过锻炼来培养自己的运动细胞,作为其中的一员,贝茜选择的运动方式是每天进行N(1 贝茜的体力限制了她跑步的距离。更具体地,如果贝茜选择在第i分钟内跑步,她可以在这一分钟内跑D_i(1 还有,在N分钟的锻炼结束时,贝茜的疲劳度也必须恢复到0,否则她将没有足够的精力来对付这一整天中剩下的事情。
2012-10-29 13:36:44 1097
原创 【传递闭包】奶牛的比赛
1、奶牛的比赛(contest) 【题目描述】 FJ的N(1 整个比赛被分成了若干轮,每一轮是两头指定编号的奶牛的对决。如果编号为A的奶牛的编程能力强于编号为B的奶牛(1 FJ想知道奶牛们编程能力的具体排名,于是他找来了奶牛们所有M(1 【输入格式】第1行: 2个用空格隔开的整数:N 和 M第2..M+1行: 每行为2个用空格隔开的整数A、B
2012-10-29 13:32:08 595
原创 【数学】SHLQSH数
PROBLEM 1. SHLQSH数 问题描述:我们把t1 , t2 (包括t1 , t2(1问题是给出数据t1 , t2后,求t1 , t2的shlqsh数; 输入输入文件 shlqsh.in 仅包含一行,共有两个整数,表示t1 t2 (用空格分开) 输出输出文件shlqsh.out 仅有一个整数,表示t1 , t2之间的shlqsh数。 输入样例
2012-10-29 07:59:11 1157
原创 【模拟】相似度
相似度问题描述:有两个长度相等的DNA序列(只包含A,T,G,C的字符串),我们想知道它的相似度,它的相似度是这样定义的。首先相似度为0。若在对应位置出现A与A,则相似度增加1513若在对应位置出现A与T,则相似度增加666若在对应位置出现T与T,则相似度增加2324若在对应位置出现T与G,则相似度增加11若在对应位置出现T与C,则相似度增加123若在对应位置出
2012-10-29 07:40:24 518
原创 【最大子矩形】面积
面积问题描述:给你一个长L,宽W的矩形纸,上面有n个黑点,你需要在这张纸上找出一个平行于坐标轴的最大矩形,使这个矩形中不包含黑点(可以在矩形边框上)。纸的一个顶点在(0,0),另一个顶点在(L,W)。 输入:输入文件的第一行包含两个整数L和W,分别表示纸的长和宽。文件的第二行包含一个整数n,表示黑点的数量。以下n行每行包含两个整数x和y,表示一个黑点的坐标,可能重复。所有黑点都
2012-10-28 17:45:00 939
原创 【最小表示法\同构二叉树】等价二叉树
3、等价二叉树(tree.pas) 【题目描述】二叉树有很多种,但是它们很多都是等价的。某二叉树通过把某非根节点作为根节点而保持其它各节点之间的关系不变,重新建立出一棵树,若这棵树是一棵二叉树,则称这两棵二叉树等价,如下图所示的三棵二叉树即为等价关系。 把第一棵树的E节点作为根则形成了第二
2012-10-28 17:32:46 990
原创 【贪心】营养膳食
2、营养膳食(diet.pas) 【题目描述】Mr.L正在完成自己的增肥计划。为了增肥,Mr.L希望吃到更多的脂肪。然而也不能只吃高脂肪食品,那样的话就会导致缺少其他营养。Mr.L通过研究发现:真正的营养膳食规定某类食品不宜一次性吃超过若干份。比如就一顿饭来说,肉类不宜吃超过1份,鱼类不宜吃超过1份,蛋类不宜吃超过1份,蔬菜类不宜吃超过2份。Mr.L想要在营养膳食的情况下吃到更多的
2012-10-28 17:20:41 1176
原创 【枚举】工件
1、工件(jia.pas) 【题目描述】Mr.L很多工件,最常见的工件都是长条形的,但其顶端是凹凸不平的,即不同位置的高度不同。现在Mr.L有两个最常见的工件,他想将它们完全放入另一种罕见的可容纳高度不超过k的工件中,问该罕见的工件的最小长度。 【输入格式】输入来自文件jia.in,包括三行。第一行包含一个不超过20的正整数k;接下来每行有一个长度不超过100的正整数串,其
2012-10-28 17:14:34 451
原创 【搜索】靶形数独
倒着搜,卡一下时就能过。/* *\ By Wu yihao\* */#include #include #include #include using std::max;long map[15][15];const long score[9][9] = {{6,6,6,6,6,6,6,6,6},{6,7,7,7,7,7,7
2012-10-28 17:04:15 734
原创 【动态规划】Tom的烦恼
Tom的烦恼(tom.pas/in/out)ProblemTom是一个非常有创业精神的人,由于大学学的是汽车制造专业,所以毕业后他用有限的资金开了一家汽车零件加工厂,专门为汽车制造商制造零件。由于资金有限,他只能先购买一台加工机器。现在他却遇到了麻烦,多家汽车制造商需要他加工一些不同零件(由于厂家和零件不同,所以给的加工费也不同),而且不同厂家对于不同零件的加工时间要求不同(有些加工时
2012-10-28 16:59:28 1187
原创 【并查集】嗅探器
嗅探器(sniffer.pas/in/out)Problem某军搞信息对抗实战演习.红军成功地侵入了蓝军的内部网络.蓝军共有两个信息中心.红军计划在某台中间服务器上安装一个嗅探器,从而能够侦听到两个信息中心互相交换的所有信息.但是蓝军的网络相当的庞大,数据包从一个信息中心传到另一个信息中心可以不止有一条通路.现在需要你尽快地解决这个问题.应该把嗅探器安装在哪个中间服务器上才能保证所有的
2012-10-28 16:57:19 977
原创 【搜索】等差数列
等差数列(num.pas/in/out)Problem给定n(1Input第一行是一个整数n,接下来一行包括了n个数,每个数的绝对值不超过10000000.Output对于每个输入数据,输出你所找出的最长等差数列的长度. Sample Input73 8 4 5 6 2 2 Sample Output5 数据规模:30%的数据n
2012-10-28 16:52:23 654
原创 【Hash\KMP\线段树】文明的复兴
文明的复兴(words.pas/in/out)Problem战神Prince&Gush回归了,但许多原先的上层精灵越来越不安分。他们无法忍受失去权力的空虚感,开始重新寻找新的途径获取权利。他们直率急躁的领导人King_Bette开始公开抨击权威,并散布谣言。 权利的统治需要统一,需要强硬,被逼无奈下正义的领袖开始收缴反动的资料,清除世界的毒瘤,借以踏上快速发展之路。不良信息指的是一
2012-10-28 16:45:54 739
原创 【动态规划\五进制运算】单人纸牌
第 4 题 单人纸牌 源程序名 double.pas|c|cpp 输入文件名 double.in 输出文件名 double.out 时间限制 1s/testcase 空间限制 32MB 问题描述 单人纸牌游戏,共 36 张牌分成 9 叠,每叠 4 张牌面向上。每次,游戏者可以从某两个不同的牌堆最顶上取出两张牌面相同的牌(如黑桃 10 和梅花 10)
2012-10-28 16:34:42 1061
原创 【打表】数页码
第 3 题 数页码 源程序名 count.pas|c|cpp 输入文件名 count.in 输出文件名 count.out 时间限制 1s/testcase 空间限制 32MB 问题描述 一本书的页码是从 1-n 编号的连续整数:1, 2, 3, ... , n。请你求出全部页码中所有单个数字的和,例如第 123 页,它的和就是 1+2+3=6。
2012-10-28 16:26:13 1254
原创 【数学】素数密度
第 2 题 素数密度 源程序名 prime.pas|c|cpp 输入文件名 prime.in 输出文件名 prime.out 时间限制 1s/testcase 空间限制 32MB 问题描述 给定区间[L, R](L 素数的个数。 输入数据 两个数L和R。 输出数据 一行,区间中素数的个数。 样例输入 2 11
2012-10-28 16:25:21 6279
原创 【搜索】速算游戏
第 1 题 速算游戏 源程序名 fun.pas|c|cpp 输入文件名 fun.in 输出文件名 fun.out 时间限制 1s/testcase 空间限制 32MB 问题描述 jyx和cyy打赌,比谁24点算得快,算得慢的那个人请客。24点的规则是这样的:给定4个1..9的整数,用括号改变运算顺序,通过加、减、乘、除通的一系列运算,得到整数24,
2012-10-28 16:22:02 1092
原创 【打表】Round Numbers
问题 3:Round Numbers(rndnum.pas) 正如你所知,奶牛们没有手指以至于不能玩“石头剪刀布”来任意地决定例如谁先挤奶的顺序。她们甚至也不能通过扔硬币的方式。所以她们通过"round number"竞赛的方式。第一头牛选取一个整数,小于20亿。第二头牛也这样选取一个整数。如果这两个数都是 "roundnumbers",那么第一头牛获胜,否则第二头牛获胜。如果一个正整
2012-10-28 16:13:47 1517
原创 【枚举】Big Square
问题 2:Big Square(bigsq.pas) 农民 John 的牛参加了一次和农民 Bob 的牛的竞赛。他们在区域中画了一个N*N(2 除了John 的一头牛Bessie以外,John其他的牛都已经放到点阵中去了,要确定Bessie放在哪个位置,能使得农民John的农场得到一个最大的正方形(Bessie不是必须参与作为正方形的四个顶点之一)。 输入格式:Line 1
2012-10-28 16:11:04 746
原创 【枚举\数据结构】乱头发节
问题 1: 乱头发节(badhair.pas) 农民John的某 N 头奶牛 (1 每一头牛i有一个高度 h[i](1 例如这个例子: == == == - = 牛面向右侧 -->= = == - = = == = = = = =1 2 3 4 5 6 牛#1 可以看到她
2012-10-28 16:00:38 995
原创 【模拟】Hotel
4、Hotel(hotel) 奶牛们最近的旅游计划,是到苏必利尔湖畔,享受那里的湖光山色,以及明媚的阳光。作为整个旅游的策划者和负责人,贝茜选择在湖边的一家著名的旅馆住宿。这个巨大的旅馆一共有N (1 贝茜一行,以及其他慕名而来的旅游者,都是一批批地来到旅馆的服务台,希望能订到D_i (1 旅馆中的退房服务也是批量进行的。每一个退房请求由2个数字X_i、D_
2012-10-28 15:54:32 469
原创 【搜索】流星雨
3、流星雨(meteor )贝茜听说了一个骇人听闻的消息,一场流星雨即将袭击整个农场,由于流星体积过大,它们无法在撞击到地面前燃烧殆尽,届时将会对它撞到的一切东西造成毁灭性的打击。很自然地,贝茜开始担心自己的安全问题。以FJ牧场中最聪明的奶牛的名誉起誓,她一定要在被流星砸到前,到达一个安全的地方(也就是说,一块不会被任何流星砸到的土地)。如果将牧场放入一个直角坐标系中,贝茜现在的位置是原点,并
2012-10-28 15:53:00 1000
原创 【动态规划】麻烦的聚餐
2、麻烦的聚餐(egroup) 为了避免餐厅过分拥挤,FJ要求奶牛们分3批就餐。每天晚饭前,奶牛们都会在餐厅前排队入内,按FJ的设想,所有第3批就餐的奶牛排在队尾,队伍的前端由设定为第1批就餐的奶牛占据,中间的位置就归第2批就餐的奶牛了。由于奶牛们不理解FJ的安排,晚饭前的排队成了一个大麻烦。 第i头奶牛有一张标明她用餐批次D_i(1 你也晓得,FJ是个很懒的
2012-10-28 15:50:12 896
原创 【枚举】连线游戏
1、连线游戏(lines) 【题目描述】Farmer John最近发明了一个游戏,来考验自命不凡的贝茜。游戏开始的时候,FJ会给贝茜一块画着N (2 贝茜可以选两个点画一条过它们的直线,当且仅当平面上不存在与画出直线平行的直线。游戏结束时贝茜的得分,就是她画出的直线的总条数。为了在游戏中胜出,贝茜找到了你,希望你帮她计算一下最大可能得分。 【输入格式】第1行: 输入
2012-10-28 15:41:48 720
原创 【动态规划】聪明伶俐的香穗子
Problem 4 聪明伶俐的香穗子 香穗子遇到难题了. 题目是这样的,一个序列上有n个整数,现在你要取m个,且这m个数的任意两个不能相隔的太近,否则这样会太丑,现在问你最大能得到多大的和 输入: 第一行三个数n,m,k,分别表示n个数,取m个,且m个中的任意两个位置差要大于等于K 接下来一行,有n个整数,表示序列上的每个数 输出:
2012-10-18 09:39:14 2299
原创 【最短路\拆点】跳舞鸡
第3题:跳舞鸡 【题目描述】从前有只鸡喜欢跳舞。为了跳出最美丽的舞蹈,它发明了一种机器。这个机器有N*N个格子。一个格子要么写着’+’,’-‘,要么写着0-9的数字。并且保证每个符号的上下左右四个方向都是数字,每个数字的上下左右四个方向都是符号。这样的机器有个神奇的功能:从一个写着数字的格子出发,每次走到一个相邻的格子,把走过格子的字符按先后顺序从左到右排过来,那么可以构成一个计算式。
2012-10-18 09:20:15 1055 7
原创 【排序】我不和你玩
第2题:我不和你玩 【题目描述】在一个N*N矩阵的世界里生活着X,C,R三种元素。他们开始相处得很融洽。但后来有一天:X:C们太不够意思了,最近他们经常作出不利于我们团结的事情。R:对啊对啊,简直令人发指。X:我们以后不跟他们玩了。R:好!于是X和R决定抵制C,要把所有的C赶到矩阵的左下角去。但是移动一个一个的元素是很费劲的。所以每次操作他们只能交换相邻的两个整行(
2012-10-18 09:13:30 786 4
原创 【模拟\搜索\STL】谁是下一个
第1题:谁是下一个 【题目描述】在那遥远的地方有座监狱叫做MSHS。这座监狱每天都要枪毙一个犯人。按犯人的编号从小到大一个一个枪毙。犯人的号码是由几个1到9的阿拉伯数字以及若干个0组成的。1到9的数字在所有犯人的号码里出现次数都相同。0则不一定,不过0不会出现在号码的第一位。两个号码的比较采取这样的方式。长度长的号码排后面,如果长度相等那么字典序大的号码排后面。现在给出今天枪毙
2012-10-18 09:06:48 422
原创 【二分\搜索\剪枝】软件下载
3、软件下载ICG大赛马上就要举行了,作为大赛的组委会兼参赛选手,信息组的成员们当然要做准备了,而其中十分重要的一项准备工作就是下载很多举办大赛必不可少的软件,已知现在机房有N台电脑,组委会列出了M个需要下载的软件及其大小Ai(即需要下载的时间),每个电脑同一时间只能下载一个软件,一个软件也只能由一个电脑下载,每个电脑下载速度相同且互不影响.因为有神器Cena的存在,每个软件只需由某一台电脑下
2012-10-16 17:40:49 667
原创 【数论】MMT数
2、MMT数FF博士最近在研究MMT数(莫明堂数-_-)。如果对于一个数n,存在gcd(n,x)0 那么x叫做n的MMT数显然这样的数可以有无限个。FF博士现在想知道在所有小于n的正整数里面有多少个n的MMT数输入样例:10 输出样例:3 样例解释: 3个数分别是 4 6 8 gcd(n,x)的意思是求n和x的最大公约数 对于50%的数据 n
2012-10-16 17:27:24 4271
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人