自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 收藏
  • 关注

原创 博客搬家通知

以后我的博文可能都将在这里发表了。我会将本博客的文章选一些搬运到我的新博客里。

2020-11-29 20:03:42 171

原创 分块学习笔记

别的不说,上来一句分块你????死了(当我没说)众所周知分块是一种优秀暴力的数据结构思想那你还写了五天。基本思想就是将一个大的区间分成几个小块,分别暴力维护小块中的信息,求解时再暴力合并怎么说了全是暴力啊。好吧我们先考虑一个问题:有一个长度为n的整数数列a。现在有m个操作,操作的格式有两种:1 x y,表示修改,将数列第x个数a[x]改为a[x]+y;2 x y, 表示询问,询问第x个数到第y个数间,最大的一个数是多少。这不是线段树裸题吗但是用分块常数小更暴力好写啊qwq。先直接暴力:

2020-11-23 13:22:12 182

原创 模拟赛爆零记

爆零了,退役了,睡厕所去了。说句实话这次模拟赛水的一批,但是我照爆零不误。一共八道题,A题竟然是A+B类型的签到题……闭着眼睛把ABCDEF六道切了,之后就做不动了。G题写了个随机数骗分,最高骗到84分,鬼知道教练看到我84就给我重测,84=50,还不如骗个66分,教练还不会重测。H题花的时间太多了,最后滚粗了。希望下次好些吧……ps:36人参考,我rk7,看来大家都挂分了。...

2020-11-21 12:28:26 183

原创 [SDOI2009]Bill的挑战

某送门看数据范围是一种优良的传统,本题 N≤15N\leq 15N≤15,状压无疑了QAQ。然后我们看到:刚好与 KKK 个串匹配的个数,就想到了容斥。感觉自己思维好跳跃啊不过似乎也是正常思路?由于是与 KKK 个串匹配,不能单纯的“奇加偶减”,我们用 f[i]f[i]f[i] 表示恰好与 KKK 个串匹配的串的个数,Cnt[i]Cnt[i]Cnt[i] 表示与至少 KKK 个串匹配的串的个数。画几个韦恩图(不过挺难画的),可以发现对于每个表示与至少 KKK 个串匹配的个数的“圆圈”都有交集,所以

2020-11-17 19:52:06 128

原创 Windows10下fc命令显示”Format-Custom : 找不到接受实际参数“b.txt”的位置形式参数。“

在洛谷问了问,就是因为WIn10下的PowerShell窗口和cmd不一样,启动cmd就行了。qaq

2020-11-16 20:35:12 3440 1

原创 [AHOI2008]紧急集合 / 聚会

传送门这题题面有毒,其实就是让你求将树上三个点都移到任意一点,三个点最少一共经过多少条边。在某种意义上可以理解为三个点的LCA?显然我们会将这三个点移到其中两个点的LCA上去。那么具体选择哪个LCA呢?我们发现,要么三个点的LCA都相同,这个时候只有一种选择;绝对不可能出现三个点的LCA都不同的情况。很容易证明,这里略去。那么如果有两个点的LCA相同呢?我们会选择那个“与众不同”的LCA。因为我们如果选这两个相同的LCA做三个点的相遇点,就会产生两个点经过了重复的边的情况,血亏啊。结合一张图来

2020-11-15 12:10:58 248

原创 【NOIP2013 Day1T3】货车运输

这道题目质量很高啊……很容易想到一个Floyd的暴力算法:O(N3)O(N^3)O(N3) 求出每个点之间的最长路,超时炸空间。我们发现这道题的”最短路“有些特殊:不是求和而是求出路径上的权值最小的一条边的权值。我们发现,图中的很多边是一定不会经过的,举例来说:在这个图中,显然 2→42\rightarrow42→4 这条边我们无论如何是不会经过的。因为如果我们想要从点 222 走到点 444,2→1→42\rightarrow 1\rightarrow 42→1→4 明显是更好的选择。同样,如

2020-11-14 18:18:06 142

原创 手写lower_bound与upper_bound

众所周知STL常数起飞(lower_bound与upper_bound尤其如此(没事手写了个二分查找,功能用法返回值和STL一毛一样(只是不能传函数,如果是对自己的结构体排序要定义小于运算符QAQ)然后测试了一下对 intintint 排序,STL耗时是我的我5倍???不是STL加了很多优化的吗Code:Code:Code:#include <cstdio>namespace Template { template<class T> inline T* lower_

2020-11-14 11:56:18 787 1

原创 [CSP- 2020]方格取数(number)

虽然题很水,但是看到考场上那么多人打挂了并且也是CSPT4于是来水一篇题解。话说这道题竟然有无数巨佬SPFA误终身……我们发现单纯的状态 f[i][j]f[i][j]f[i][j] 不能记录哪些方格已经走过,又发现在每一列,走过的方格一定是连续区间,所以说状态改为:f[i][j][0]f[i][j][0]f[i][j][0] 表示当前在 iii 行 jjj 列,在第 jjj 列可以往上下走的能取到最大值f[i][j][1]f[i][j][1]f[i][j][1] 表示当前在 iii 行 jjj 列

2020-11-11 16:39:20 1384 2

原创 [CSP- 2020] 表达式(expr)

昨天现学表达式树的我太难了终于在某谷上抢到CSP题解的位置了首先我们建立表达式树,像我一样不会的蒟蒻应该没有吧我可是全谷最弱的自行出门右转再左转再前行50m百度。数的节点有一个特殊的值域:number,记录当前节点对应的 %x_i$ 编号(如果当前节点是一个运算符就number=-1)。浙道题有一个灰常特殊的性质:每次修改不影响后面的操作,也就是说我们用不着我开始想的线段树啥的。我们可以发现,对于每次修改,有可能会影响根节点的值,也有可能不会。什么时候会呢?预处理的时候,我们先计算出整个表达式的值

2020-11-11 16:05:03 1571

原创 [NOIP 2017 提高组] 列队

传送门看到这是NOIP2017tg压轴题,怕了怕了(个鬼)……。首先我们可以看出这是一个线段树的题目废话,我们先来考虑一个特殊的情况,即 n=1n=1n=1 的情况。对于这种数据规模,我们肯定暴力艹不过去麻烦作者在考虑超不超时前先考虑数组开的下不,所以,我们又看到 q≤3×105q\leq 3\times 10^5q≤3×105,于是就可以使用一颗线段树来维护:先将线段树 1∼n1\sim n1∼n 区间每个节点的权值设为这个节点的区间长度(即一开始 1∼n1\sim n1∼n 位置站满了人),对于

2020-11-09 22:06:51 317

原创 [BZOJ 2259]新型计算机

写在前面的ps:你以为set常数大?可是这个程序加了 freadfreadfread 跑得飞快(其实不加也挺快)。前言:本文使用了动态规划+数据结构来解决此题,如果对数据结构不感兴趣请转其它图论题解代码比我短多了。另外此题我用了4天超过十个小时来做和调试这道题,求安慰(AC:这个我会正文:看到这题正常人第一反应就是暴力规划:fif_ifi​ 表示将序列前 iii 个数字设为合法序列的最小代价。不难证明最优子结构性质,无后效性显然。方程:f[i]=minf[i] = minf[i]=min{f[

2020-11-08 10:22:44 193

原创 NKOJ 4396 站军姿

题目描述用一颗丑陋的线段树维护每个位置的人数即可。具体可以将移到后面的同学也看作是在一个位置 iii,不需要特殊处理。对于查询操作,我们可以从根节点开始遍历这线段树,途中判断第 xxx 个人在它的哪一棵子树,最终查出它的位置。显然这要动态开点,不然超时超空间。设我们查询出来的位置为 kkk,那么如果 k≤nk\le nk≤n,这个人编号就是 kkk,否则说明这个人出过至少一次队,所以说搞一个 num[i]num[i]num[i] 记录因为出过队而站到 n+in+in+i 位置的同学的编号。Code

2020-11-04 20:44:14 232

原创 洛谷【小Z的 J-PCS 模拟赛】爆零记

说句实话这次比赛虽然难度确实是 普及++/提高–,适合pj选手,可是我依然挂的很惨。我做完作业还剩一个小时不到了。第一题什么tm^{tm}tm鬼,直接跳过第二题同理第三题……一道数学题,貌似比较可做,然后想了1min发现是个RMQ+GCD的裸题,写了4min后一遍过样例A了。第4题……骗20分再说,然后写了个暴力,可能由于常数优化多得了4分,骗了24pts。然后滚回T2,想了半天写个全排列发现全WA了,于是就再也没去管。这时候看看排行榜,怎么人家T1都A了,回头一看这不就一个纯模拟吗,写了几分

2020-11-01 12:17:40 210 1

原创 【概率】聪聪和可可

传送门身为紫题这道题算是挺水的了,就一个bfs求出两点最短路径,然后bfs过程中顺便求出 nxt[c][g]nxt[c][g]nxt[c][g] 数组(表示聪聪在 ccc 位置,可可在 ggg 位置聪聪下一步会走到哪个点上)。状态的话基本是个人都能想到:f[c][g]f[c][g]f[c][g] 表示聪聪在 ccc 位置,可可在 ggg 位置平均情况下聪聪还要多少步才能吃到可可。方程:f[c][g]=(∑i∈sonsf[nxt[nxt[c][g]][g]][i])+1+f[[nxt[c][g]][g]

2020-10-31 09:29:12 368 2

原创 UVA1627 团队分组 题解

这份代码在vjudge上过了,洛谷RJ出锅了交不起。传送门思路来源紫书。这道题其实不难(那你……嗯,对的,把话说在前面,这题输出坑死JB人,每组测试数据输出后要输出两个换行,末行一个换行。然后我先解释一下紫书为什么要用“不相互认识关系“来建图。因为两个人认识不一定在一个组,但是不认识一定在不同的组。无解判断:对于这道题,无解只有一种可能,就是人们的“不相互认识关系”发生冲突。即当图出现一个由奇数条边构成的环的时候,问题无解。具体来说,1和2不相互认识,2和4也是,4和1也是,那么这

2020-10-29 11:24:19 217

原创 分数计算器

写了两个多小时,感觉挺锻炼编码能力。灰常年(sha)轻(bi)的算法竞赛选手,没写过OOP,于是这次乱写了一同也不知道算不算OOP……计算器支持小数,分数。注意我的计算机里面存在一个瑕疵,就是前置符号的优先级比括号和冥还要高,所以形如-3^2,-(5+2*8)这种表达式请写成0-3^2,0-5+2*8。这里有一点不方便。计算器的使用:运行程序,如果正常的话应该会出现>>>提示符。然后就可以输入表达式了。支持负数小数分数整数的混合运算,^运算符代表冥运算。输入表达式后按换行,程序会自动

2020-10-25 21:07:37 5552

原创 [CQOI2011]放棋子

这道题乍一看就是动规题。显然有多个颜色棋子的情况由于棋子之间会相互影响不好处理,我们先考虑只有一种颜色的情况。设 s[k]s[k]s[k] 表示第 kkk 种颜色棋子的数量。C[m][n]C[m][n]C[m][n] 表示 CmnC^n_mCmn​ 的值。f[k][i][j]f[k][i][j]f[k][i][j] 表示把第 kkk 种颜色的棋子放完占 iii 行 jjj 列的方案数。这 iii 行 jjj 列不一定是要挨在一起的。我们可以用总的方案数 Cm×nkC^k_{m\times n}C

2020-10-24 21:21:21 210

原创 ST表

ST表(sparse-table)是一种代码极其短的数据结构,RMQ(Range Minimum Qustion,范围最小值问题)专用。RMQ就是给你一个序列不断询问你给定区间内的最小值。ST表只能解决静态的RMQ,动态的需要用到万能的常数贼大的线段树。链接ST表基本思想:d[i][j]d[i][j]d[i][j] 表示以 iii 为起点,长度为 2j2^j2j 这一段区间中的最小值。例如,d[3][2]d[3][2]d[3][2] 就是 3∼3+223\sim 3+2^23∼3+22 区间,即3

2020-10-24 13:26:28 257 2

原创 卢卡斯(Lucas)定理

看了看网上关于 LucasLucasLucas 的讲解,感觉很多充斥着大量难懂的公式,对于小学生初学者来说不太友好,于是决定写一篇没有任何算法数学基础的人都能看懂的 LucasLucasLucas 。(当然本文中也会出现一些公式,不过没有 ∑\sum∑ 这种令人难受的符号而且公式大多特别简单)LucasLucasLucas 定理主要用于大组合数取膜。他的结论很简单:当且仅当 ppp 为质数时,Cmn mod p=Cm mod pn mod p×Cm÷pn÷p mod pC_m^n\, mod\,p =

2020-10-22 13:22:58 1074 1

原创 【概率】搜集卡片

Description童年时代,你是否热衷于搜集零食里的卡片呢?比如你集齐了108张水浒英雄的卡片,你会感到非常有成就感,而且还可以去兑换奖品。作为一个聪明的小孩,你注意到如果你要赢得奖品,你必须买很多很多的零食才能搜集齐卡片。要赢得奖品,你估计要买多少袋零食才能成功?Input Format第一行,一个整数N(1 <= N <= 20), 表示总共有N种不同的卡片。第二行,N个空格间隔的实数p1, p2, …, pN, (p1 + p2 + … + pN <= 1), 表示零食

2020-10-18 19:41:40 1045

原创 UVA1099 【Sharing Chocolate】分享巧克力

洛谷博客食用传送门题目传送门这道题一看 n≤15n\leq 15n≤15,状压DP无疑了……我们可以设出一个显而易见的状态:f[x][y][s]f[x][y][s]f[x][y][s] 表示在 x×yx\times yx×y 的矩形中分成 sss 中的每一块巧克力是否可行。这样空间显然会炸,我们可以发现,fff 数组中保存了太多的无用状态——有了 xxx 和 sss,yyy 就可以唯一确定了。这样只需要用 f[x][s]f[x][s]f[x][s] 表示在一条边长为 xxx 的矩形中分成 sss 中

2020-10-18 10:30:45 142

原创 【NOIP2017】宝藏

传送门这道题真的给我留下了创伤……废了4天七八个小时才AC……先发一张耀眼的AC图:啊心情好多了。另外听说某巨佬爆搜跑了0ms,n在20以内都秒过……先%为敬,tql。好了我们先看看数据范围,n≤12n\leq 12n≤12,状压DP无疑了……看了数据范围再看题面,这道题类似最小生成树。kruskal肯定不行,prim也会被卡掉。最后连出的边一定形成一棵树,在计算过程中我们要在状态中保存当前树的高度计算题目中的 LLL 值。所以状态:设 f[i][S]f[i][S]f[i][S] 表示树高

2020-10-17 21:11:51 262

原创 Codeforces 627 A

这道题我折腾了一个我上午,其实也就一个多小时,其他时间颓废做其他题去了。自己AC后发现思路与教练和各位大佬的完全不一样,于是来水一发。题目大意:有两个正整数a和b,已知a+b=s,a xor b=x,问有多少对a,b满足上述条件?输入格式:两个整数s和x (2 ≤ s ≤ 1012, 0 ≤ x ≤ 1012)输出格式:一个整数,表示满足条件的数对的个数。样例输入1:9 5样例输出1:3 3样例输入2:3 3样例输出2:2提示样例1说明, (2, 7), (

2020-10-06 19:46:00 147

原创 NKOJ P4135 加法游戏

DP好毒瘤题!问题描述何老板和你玩一个加法计算游戏。游戏开始,何老板手中有一个整数a,你手中有一个整数b。每一轮,两人各自都从区间[-k,k]中任意取出一个整数,加到自己手中的数字上。游戏总共进行了t轮。何老板希望,游戏结束时,他手中的数字比你手中的数字大。问满足何老板希望的游戏方案数有多少?如果两场游戏中,存在一轮,某个玩家取的数字不同,我们就认为这是两场方案不同的游戏。比如:下面两场游戏,a=5,b=4,t=2,两人最终取得的分数没有变化,但我们认为这是两场不同的游戏。第一场:何:

2020-10-03 12:17:08 170

原创 NKOJ 2139 鸡蛋染色

问题描述:比特兰人都很怪异,他们有一些奇怪的习俗。为准备“比特兰狂欢节”,J叔叔让G和A去把n个鸡蛋染成彩色。孩子们很高兴,因为他们可以得到一些报酬。J叔叔要他们给出酬劳的报价,G给出了染每只鸡蛋的价格,A也给出了他染每只鸡蛋的价格,结果G和A的n只鸡蛋报价总和恰好是1000块。J叔叔想把这些鸡蛋分给两个孩子染色,但他希望支付给A的酬劳总额与支付给G的总额差别不超过500块。请问J叔叔期望的分配方案是否可行呢?输入格式:第一行,一个整数nnn (1≤n≤106)(1\leq n\leq 10

2020-10-01 20:54:35 235

原创 sort函数的效率

最近本蒟蒻做了一个实验,测试sort的效率。我使用WIndows10(没开-O2)系统试验了三种排序方法:重载运算符,传入函数指针以及传入仿函数。如果您按照我的测试程序测出来时间效率差距较大,请在评论区留言并说明操作系统和测试结果。以下n表示给多少个数据排序,对于每个n都测了三次:(单位:ms)n重载运算符函数仿函数500000801408050000080124805000008013980100000017227116410

2020-09-27 17:09:16 814 1

原创 main函数返回非0值的几种情况

return value 3:断言失败return value 3221225620 :除零错误return value 3221225477 :访问越界,是最常见的一种,例如数组下标越界return value 3221225725 :堆栈溢出,一般都是无限递归

2020-09-26 13:46:27 2323

原创 UVA1412 基金管理 Fund Management

我是按照紫书思路搞得,不过没抄代码,也因此把所有的坑都踩了一遍我tcl。做法和紫书大致相同,不过初始化的时候代码更加简洁并且效率较高,动态规划主程序采用填表法而非刷表法。思路自己看紫书去,解释得很详细了。其实就是 d[i][p]d[i][p]d[i][p] 表示第 iii 天时手头股票集合为 ppp 时能获得的最大现金。另外状态其实不会超过15000个,所以数组不用开那么大。buy[i][k]buy[i][k]buy[i][k] 表示状态 iii 买股票 kkk 后的状态,sell[i][k]sell

2020-09-26 12:56:53 282 1

原创 NKOJ 1361 帮帮吉米(Help Jimmy)

话说这道题百度上好像没几个题解,大多数题解又只有代码和少量文字,于是乎我就来水题解了。Description“Help Jimmy” 是在下图所示的场景上完成的游戏。景中包括多个长度和高度各不相同的平台。地面是最低的平台,高度为零,长度无限。Jimmy老鼠在时刻0从高于所有平台的某处开始下落,它的下落速度始终为1米/秒。当Jimmy落到某个平台上时,游戏者选择让它向左还是向右跑,它跑动的速度也是1米/秒。当Jimmy跑到平台的边缘时,开始继续下落。Jimmy每次下落的高度不能超过MAX米,不然

2020-09-15 18:52:13 278 1

原创 常用的卡常方法

最近学了些玄学的东西,感觉效果非常明显,加了玄学优化程序立马跑得飞快。最近比赛反正特别卡常,学些玄学的东西也并非浪费时间嘛QAQ。这里参考了一些大佬的文章,结合自己的卡常心得,给出几种卡常方法。NO.10 数组尽量开奇数大小原因不明……NO.9 适当使用指针直接指针访问比数组+下标要快一些。先访问a[i]后访问a[i+1]和a[i+2]这些会快很多。但是指针使用不当会造成很大的负优化,还会使程序复杂,容易RE。NO.8 少用algorithm的max,min,swap推荐手写(这是我个人

2020-09-13 10:52:40 1736 2

原创 NKOJ 3709 走丢的奶牛

Description约翰有n头奶牛,这些奶牛长得很相似,约翰经常分不清谁是谁,于是约翰给他们编号1到n,以此来区分每头奶牛。今天奶牛们想作弄一下约翰,n头奶牛乱序排成一排。约翰想要分清每个位置对应奶牛的编号。约翰从左起第2头奶牛开始一直到第n头奶牛,依次问每个奶牛一个问题“你左边有多少个编号比你小的奶牛”,奶牛们都会如实回答约翰的问题。问,你能否根据奶牛的回答,帮助约翰推出这n头牛对应的编号?Input Format第一行,一个整数n接下来n-1行,每行一个整数,分别表示左起第2到第n头奶牛

2020-09-12 17:35:33 710

原创 树状数组学习摘要

最近本蒟蒻学了树状数组,很喜欢这个数据结构因为这代码确实短。好了废话不多说直接正题。树状数组是一种新颖的数据结构,这个数据结构1997年才发明,很年轻的一个数据结构。这里说一个位运算lowbit,lowbit(x)表示取出x的最后一位1的数值。lowbit(x)=x&-x。先来一张手绘图形成一个直观的认识:(纯手绘勿喷)图中a数组就是底层的那个12345678,树状数组就是飘在空中的12345678,我这样描述是不是有点那啥。好了那这个东西是干啥的呢?当我们要求出一个不断变化的连续一

2020-09-12 11:52:08 160

原创 八数码难题

题目传送门参考了一下紫书的做法,但是具体实现还是有很大不同的,这里给出的代码供参考。听说很多大佬用的双向广搜?用了IDA*?好像我都不会。我写的就是一个朴素BFS,大佬绕行。这道题的细节挺多,我也为使用STL付出了一定的码量。Code(C++11)Code(C++11)Code(C++11):#include <cstdio>#include <unordered_set>#include <queue>#include <cstring>

2020-09-06 20:24:53 190

原创 UVA1220 Hali-Bula的晚会 Party at Hali-Bula

题目传送门首先题目说得明明白白“形成一个树状结构”,树状DP是没逃了……在这里我给出的是紫书思路的一种实现,具体请看紫书P282。d(u,0)d(u,0)d(u,0) 表示以 uuu 为根的子树中,不选 uuu 点能邀请的最大人数。f(u,0)f(u,0)f(u,0) 表示方案是否唯一(1表示唯一,0表示不唯一)。d(u,1)d(u,1)d(u,1) 表示以 uuu 为根的子树中,选 uuu 点能邀请的最大人数。f(u,1)f(u,1)f(u,1) 表示方案是否唯一。状态转移方程挺好写的,设 SS

2020-09-05 21:16:29 885 1

原创 NOIP 2017 普及组 跳房子

颓了一天整整六个小时颓出来的题,写篇颓废纪念一下是,的,没,错,这道题花了我tm我^{tm}我tm一整天。好了不废话了,直接给出题目链接如果想用更狠的官方数据来测,可以进这个OJ老实说,蒟蒻感觉这题目有些绕……一上来看到数据范围我吓呆了,n≤500000n \leq 500000n≤500000……考虑二分最少所花的金币 ggg。左边界显然为1,右边界是 ddd 与最后一个点的距离 - ddd 中的较大值。其实直接搞成那啥十万也可以。我们显然要用一个 checkcheckcheck 函数检

2020-09-01 14:20:06 579

原创 区间DP笔记

文章目录区间DP的引入例题总结:习题:区间DP的引入区间DP是一种特殊的DP,与普通的DP在阶段的划分上往往有所不同。先来看个栗子:洛谷P1808 一道人尽皆知的区间DP模板题这道题大家都做过,通过这一道题可以体会到区间DP的特殊:他是按照子区间的长度划分阶段,不是按找起点终点等划分。在很多DP题中,一个区间的答案往往取决于他的子区间的答案,于是区间DP就诞生了。 这道题的分析:(做过的巨佬请绕行)贪心显然有问题,不采用。fi,jf_{i,j}fi,j​ 表示区间 i,ji, ji,j

2020-08-29 16:02:12 389 1

原创 NKOJ P1048 筷子

DescriptionA先生有很多双筷子。确切的说应该是很多根,因为筷子的长度不一,很难判断出哪两根是一双的。这天,A先生家里来了 KKK 个客人,A先生留下他们吃晚饭。加上A先生,A夫人和他们的孩子小A,共 K+3K+3K+3 个人。每人需要用一双筷子。A先生只好清理了一下筷子,共 NNN 根,长度为 T1,T2,T3,……,TNT_1,T_2,T_3,……,T_NT1​,T2​,T3​,……,TN​ .现在他想用这些筷子组合成 K+3K+3K+3 双,使每双的筷子长度差的平方和最小。(怎么不是和最小?

2020-08-27 19:14:41 292

原创 NKOJ P1835 【USACO3.3.5】A Game游戏 IOI‘96

Description有如下一个双人游戏:N(2 <= N <= 100)个正整数的序列放在一个游戏平台上,游戏由玩家1开始,两人轮流从序列的两端取数,取数后该数字被去掉并累加到本玩家的得分中,当数取尽时,游戏结束。以最终得分多者为胜。编一个执行最优策略的程序,最优策略就是使玩家在与最好的对手对弈时,能得到的在当前情况下最大的可能的总分的策略。你的程序要始终为第二位玩家执行最优策略。Input Format第一行: 正整数N, 表示序列中正整数的个数。第二行至末尾: 用空格分隔的N个正

2020-08-25 12:00:24 349

原创 NKOJ P1006 护卫队

NKOJ 1006 护卫队Description护卫车队在一条单行的街道前排成一队,前面河上是一座单行的桥。因为街道是一条单行道,所以任何车辆都不能超车。桥能承受一个给定的最大承载量。为了控制桥上的交通,桥两边各站一个指挥员。护卫车队被分成几个组,每组中的车辆都能同时通过该桥。当一组车队到达了桥的另一端,该端的指挥员就用电话通知另一端的指挥员,这样下一组车队才能开始通过该桥。每辆车的重量是已知的。任何一组车队的重量之和不能超过桥的最大承重量。被分在同一组的每一辆车都以其最快的速度通过该桥。一组车队通过

2020-08-24 21:10:44 295

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除