隐藏
Bill Yang's Blog

路终会有尽头,但视野总能看到更远的地方。

0%

题目大意

    Sanae准备对大结界进行一次连续$n$天的风祭。Sanae每天可以召唤一种神风。她一共有$m$种神风可以召唤,但是如果有连续$m$天刮了$m$种不同的神风,环境就会遭到破坏。现在,Sanae想知道这$n$天她有多少种召唤神风的方案。
    由于答案可能很大,所以你只需要告诉她方案数对$10^9+7$取模的结果即可。

阅读全文 »

题目大意

    $n$个天使排成一条直线,某些天使之间需要互相联系,他们之间的通讯可以通过黑白两种通道中的一种;所有通道必须在直线同侧(另一侧是地面);为了保证通讯效率,同种颜色的所有通道之间不能相交。请计算能否建立这种通讯方案。

阅读全文 »

题目大意

    有人问现实中为什么总是男生追求女生,反过来很少。实际上女生也是想主动追求男生的,但是世俗中对于主动追求男生的女生有种歧视,这样就使得女生不大敢主动追求男生。但是面对喜欢的男生,难道就不出手么?女生只能步步为营,挖坑来引诱男生往里跳。这时候问题就来了,挖掘机技术到底哪家强?
    被热血沸腾的广告洗脑了若干天后,Matt终于下定决心,毅然登上了开往泉城的列车,决心寻找生活的希望。
    来到布鲁谢特学院后,Matt逐渐地了解了各种型号的挖掘机。在这里我们可以认为有大挖掘机和小挖掘机两种。
    今天Matt的任务很简单:首先他要用大挖掘机挖出恰好$N$单位体积的砂土。由于小挖掘机比较笨拙,它每次挖的砂土体积是固定的。也就是说,设每次挖$x$单位体积砂土,那么$N$需要被$x$整除。在挖出若干堆体积为$x$的砂土后,Matt需要计算$x$的“难挖指数”。体积$x$的“难挖指数”定义如下:对于某个不超过$x$的体积$y$,如果$x$与$y$的最大公约数为$1$,那我们认为体积$y$是“难挖的”,$x$的“难挖指数”就要加上$y$。
    由于Matt之后还需要用小挖掘机处理被大挖掘机挖出的砂土,他希望知道所有可能的$x$的难挖指数的和,这样他好估算今天要干多久,不然作为布鲁谢特的高才生,他出门要被笑话的。

阅读全文 »

题目大意

    又到吃饭时间,Polo面对饭堂里琳(fei)琅(chang)满(keng)目(die)的各种食品,又陷入了痛苦的抉择中:该是吃手(jiao)打肉饼好呢,还是吃豆(cai)角(chong)肉片好呢?嗯……又不是天秤座怎么会酱紫呢?
    具体来说,一顿饭由$M$个不同的部分组成(荤菜,素菜,汤,甜品,饮料等等),Polo要在每个部分中选一种作为今天的午饭。
    俗话说的好,永远没有免费的午餐,每种选择都需要有一定的花费。长者常常教导我们,便宜没好货,最便宜的选择估计比较坑爹,可囊中羞涩的Polo还要把钱省下来给某人买生日礼物,这该怎么办呢?
    于是一个折中方案出来了:第$K$便宜的组合要花多少钱?这就要靠你了。

阅读全文 »

题目大意

    G 博士发现了新的遗传疾病,这种疾病受到多种基因片段的控制。
    我们用一个仅由小写字母组成的字符串$S$表示一个基因片段,该基因的有效片段为$S$的所有后缀(包括空串)。
    根据G博士的研究,该遗传疾病的患病概率,与基因的有效片段有关,若控制该遗传疾病的基因片段的共有有效片段越长,则患病概率越大。
    G博士将所有的发现的基因片段放在了一个数据库中,随着研究的进展,G博士的数据库中储存的基因片段越来越多,这给G博士对疾病的研究造成了一定困难。
    现在G博士想知道,对于控制某一疾病的一些基因片段,它们的最长共有有效片段为多长?

    第一行两个整数$N,M$,其中$N$表示数据库中原本存在的基因片段个数,$M$表示后来的事件个数。
    接下来$N$行,每行一个字符串,表示一个已知的基因片段,其中第$i$行的基因片段编号为$i$。
    接下来$M$行,表示$M$个事件,格式为以下情况之一:
    $1.$“$1\,S$”,表示发现了一个新的基因片段加入数据库,编号为已有基因片段数$+1$。
    $2.$“$2\,T\,A_1\,A_2\ldots A_T$”,表示询问编号为$A_1,A_2,\ldots,A_T$这$T$个编号的最长共有有效片段的长度。

阅读全文 »

题目大意

    2014年7月17日,马来西亚航空MH17班机执飞阿姆斯特丹史基浦机场飞往吉隆坡国际机场航线时,在乌克兰靠近俄罗斯边界33,000英尺高空疑受到9K37山毛榉地对空导弹击落坠毁。事件发生后,汉莎航空、法国航空、土耳其航空、俄罗斯洲际航空、达美航空、英国航空、俄罗斯航空、印度航空、捷特航空和荷兰皇家航空开始禁止班机进入乌克兰东部或全境领空范围。美国航空公司的班机禁止在乌克兰境内飞行,同时UTair航空、意大利航空和维珍航空也宣布他们的班机将会重新规划航行的路线。英国交通部已经要求该国的班机不要进入乌克兰领空范围。中国民用航空局已要求国内航空公司所有飞越乌克兰的航班绕飞。
    作为相关负责人,你需要根据实际情况规划航线规避不安全地区,包括战争区域、危险天气、火山灰和外星人入侵……等。每个不安全区域被标记为一个凸多边形,每个凸多边形相离,你需要规划一条从指定起点到指定终点的航线,要求航线不得进入不安全区域,输出它的最短长度。为了你的方便,起点和终点都是多边形的顶点。

阅读全文 »

题目大意

    众所周知,熟练掌握至少一种排序算法是参加NOIP的必备技能。常见的排序算法有冒泡排序、归并排序、快速排序、奇偶排序、猴子排序、梳排序、鸡尾酒排序、臭皮匠排序等。
    在这里,介绍一种利用栈进行排序的方法。例如,当数组中的元素为$1,3,2$时,我们可以利用栈对其进行排序:$1$入栈;$3$入栈;$3$出栈;$2$入栈;$2$出栈;$1$出栈。在这个例子中,出栈序列是$3,2,1$,因而实现了对数组的排序。
    遗憾的是,在不打乱入栈顺序的前提下,有时仅仅借助一个栈是不能实现对数组的完全排序。例如给定数组$2,1,3$,借助一个栈,能获得的字典序最大的出栈序列是$3,1,2$。($2$入栈;$1$入栈;$3$入栈;$3$出栈;$1$出栈;$2$出栈)
    现请你借助一个栈,在不打乱入栈顺序的情况下,对数组进行从大到小排序。当无法完全排序时,请输出字典序最大的出栈序列。

阅读全文 »