【题解】线段
【题目描述】
【输入描述】
【输出描述】
【样例输入】
3 0 2 2 4 1 3
【样例输出】
2
【题目描述】
【输入描述】
【输出描述】
【样例输入】
3 0 2 2 4 1 3
【样例输出】
2
【题目描述】
同学们下课后去食堂,每个人都需要一段时间去点菜。
然而,某些同学点菜时间太长了。同学们对于等待很烦躁:他们希望,能尽量少的花时间等待。
(同学数<=100000),(0<=点菜耗时<=10000)
他们希望在点菜时,能排成一个次序,使得总等待时间最短(即不包括点菜人的其他所有人的等待时间)。
【输入描述】
第一行是一个数字n,表示同学的个数
接下来n个数,表示点菜的耗时
【输出描述】
一个数,表示总等待时间。
【样例输入】
6 9 1 3 5 4 2
【样例输出】
35
【题目描述】
大战即将来临,杰洛特需要为自己增添战斗力,广袤的大陆有诸多豪杰,正好可以为杰洛特所用
杰洛特分别有两处地方n1,n2需要豪杰的战斗力
一共有n个豪杰,每一个豪杰拥有自己的战斗力pi,当然战斗力是越高越好,可是人人之间还是有差距的。
因此两个城池决定,各自选出最高战斗力的算术平均值之和。
【输入描述】
第一组一个n表示拥有多少个豪杰,以及一个n1,n2分别表示城池需要的豪杰数
接下来一行有n个数据分别表示各个豪杰的战斗力
【输出描述】
【样例输入】
4 1 2 1 2 3 4
【样例输出】
6.500000
【题目描述】
小蓝有一个字符串 s,他特别喜欢由以下三个字符组成的单词:l,q,b,任意顺序都可以,一共有 6 种可能:lqb、lbq、qlb、qbl、blq、bql。
现在他想从 s 中,尽可能切割出多个他喜欢的单词,请问最多能切割出多少个?单词指的是由若干个连续的字符组成的子字符串。
【输入描述】
输入一行包含一个字符串 s。
【输出描述】
输出一行包含一个整数表示答案。
【样例输入】
lqbblqblqlxqb
【样例输出】
3
【数据范围】
对于20%的数据,1<=|s|<=10
对于40%的数据,1<=|s|<=20
对于60%的数据,1<=|s|<=100
对于70%的数据,1<=|s|<=1000
对于80%的数据,1<=|s|<=10000
对于所有数据,1<=|s|<=10^5, s中只包含小写字母
【题目描述】
输入一个数组 a,包含有 n 个元素 a1,a2,⋯,an。对这个数组进行 m 次变换,每次变换会将数组 a 中的每个元素 ai 转换为 ai⋅bitCount(ai)。其中 bitCount(x) 表示数字 x 的二进制表示中 1 出现的次数,例如 bitCount(3)=2,因为 3 的二进制表示为 11,其中 1 出现了两次。
请输出变换之后的数组内容。
【输入描述】
输入的第一行包含一个正整数 n,表示数组 a 中的元素个数。
第二行包含 n 个整数 a1,a2,⋯,an,相邻整数之间使用一个空格分隔。
第三行包含一个整数 m,表示变换次数。
【输出描述】
输出一行,包含 n 个整数,相邻整数之间使用一个空格分隔,表示变换之后得到的数组 a。
【样例输入】
2 5 7 2
【样例输出】
20 63
【样例说明】
,,第一次变化后 。
,,第二次变换后 。
【数据范围】
对于30%的数据,1<=n<10
对于60%的数据,1<=n<=100
对于100%的数据,1<=n<=100, 0<=m<=5,0<=ai<=1000
【题目描述】
在一条一维的直线上,存在着 n 台显示器和 n 个电源插座。老师给小蓝布置了个任务:负责将每台显示器通过电源线与一个插座相连接(每个插座最多只能给一台显示器供电);同时,老师希望所消耗的电源线的长度尽可能的少,请你帮小蓝计算下电源线的最小消耗长度为多少?
为了便于计算,你只需要考虑直线距离即可。
【输入描述】
输入的第一行包含一个正整数 n。
接下来 n 行,每行包含一个整数 xi,依次表示每台显示器的坐标。
接下来 n 行,每行包含一个整数 yi,依次表示每个插座的坐标。
【输出描述】
输出一行包含一个整数表示答案。
【样例输入】
2 0 1 2 3
【样例输出】
4
【数据约定】
对于20%的数据,1<=n<=10, 0<=Xi,Yi<=100
对于40%的数据,1<=n<=100, 0<=Xi,Yi<=10^3
对于60%的数据,1<=n<=1000, 0<=Xi,Yi<=10^5
对于80%的数据,1<=n<=10000,0<=Xi,Yi<=10^9
对于所有数据,1<=n<=50000,0<=Xi,Yi<=10^9
【题目描述】
在小A的星际大战游戏中,一艘强力的母舰往往决定了一场战争的胜负。一艘母舰的攻击力是普通的MA(Mobile Armor)无法比较的。 对于一艘母舰而言,它是由若干个攻击系统和若干个防御系统组成的。两艘母舰对决时,一艘母舰会选择用不同的攻击系统去攻击对面母舰的防御系统。当这个攻击系统的攻击力大于防御系统的防御力时,那个防御系统会被破坏掉。当一艘母舰的防御系统全部被破坏掉之后,所有的攻击都会攻击到敌方母舰本身上去造成伤害。 这样说,一艘母舰对对面的伤害在一定程度上是取决于选择的攻击对象的。 在瞬息万变的战场中,选择一个最优的攻击对象是非常重要的。所以需要写出一个战斗系统出来,判断出你的母舰最多能对对手造成多少伤害并加以实现。
【输入描述】
输入第一行两个整数M和N,表示对方母舰的防御系统数量和你的母舰的攻击系统数量。 接着M行每行一个整数每一个表示对方防御系统的防御力是多少。 接着N行每行一个整数每一个表示己方攻击系统的攻击力是多少。
【输出描述】
输出仅有一行,表示可以造成的最大伤害。
【样例输入】
3 5 1000 2000 1200 2100 2000 1200 1000 1000
【样例输出】
2000
【题目描述】
给出若干个整数,询问其中是否有一对数的和等于给定的数。
【输入描述】
第一行是整数n(0 < n ≤ 100,000),表示有n个整数。
第二行是n个整数。整数的范围是在0到108之间。
第三行是一个整数m(0≤m≤230),表示需要得到的和。
【输出描述】
若存在和为m的数对,输出两个整数,小的在前,大的在后,中间用单个空格隔开。若有多个数对满足条件,选择数对中较小的数更小的。若找不到符合要求的数对,输出一行No。
【样例输入】
4 2 5 1 4 6
【样例输出】
1 5
【题目描述】
给定若干个长度 ≤106 的字符串,询问每个字符串最多是由多少个相同的子字符串重复连接而成的。如:ababab 则最多有 3 个 ab 连接而成。
【输入描述】
输入若干行,每行有一个字符串,字符串仅含英语字母。特别的,字符串可能为 . 即一个半角句号,此时输入结束。
【输出描述】
若干行,每个数一行。
【样例输入】
abcd aaaa ababab .
【样例输出】
1 4 3
【题目描述】
小X终于意识到需要花大力气减重了,他询问了若干个减重专家后决定采用最适合年轻人的运动减重方案,考虑再三,小X最终选择了打羽毛球的方式,一个原因是小X的小伙伴大都喜欢打羽毛球,其次是打羽毛球要抬头,对活动颈椎有好处,刚好可以缓冲编程久了对颈椎的压迫。
经过一个月的努力,小X的国际象棋 AI 在机器学习的环境中进步神速,已经能够轻松战胜深蓝了,但小X的体重却没有太大变化,离第一目标 Q 老师尚有一段距离,这天小X跟往常一样白天打羽毛球,晚上训练 AI 后就睡觉了,睡梦中小X梦见自己先是被一束强光罩住了,随后被吸进了 UFO,落到了 UFO 的甲板上,只见一只会说人话的机器狗迎上前来,对小X说:“小X先生好,我家主人在会客舱等你多时了!”
随后小X被带到了一位长了三只眼的外星首领面前。
外星首领很友善地和小X握了手,然后对小X说:“你做的 AI 非常棒,我已经很多年未遇对手了,今天跟你的 AI 打得旗鼓相当,十分过瘾,这次请你来作客是想和你交个朋友,你有什么要求尽管提,我们会尽量满足!”小X听罢受宠若惊,心想外星科技这么发达,也许有办法让我立刻变得像中天学长一样帅!
于是小X提出了这个超高难度的要求,外星首领听后微微一笑:“你这个要求可以满足,但我们要对你的基因进行一次分析,把你基因中的肥胖基因找出来,然后给它们加上锁!象我们熟知的那样,人类的基因序列(英文缩写为 DNA)是一个由字母’A’,‘C’,‘G’,'T’组成的字符串,肥胖基因是其中的一个子串(子串为原串中一段连续的字符),外星人对小X的基因手术过程是这样的:先找出所有的肥胖基因,并将它们用基因墨水染成红色,然后将某些字符加上基因锁,一把基因锁只能锁住一个字符,一个肥胖基因只要有一个字符加上了基因锁,则这个肥胖基因就不再起作用,现在要你计算有多少个字符被基因墨水染成了红色?最少需要多少把基因锁才能将所有的肥胖基因锁住?
【输入描述】
第一行包含两个用空格隔开的正整数 L1,L2,表示小X基因的长度和肥胖基因的长度。
第二行为一个长度为 L1 的字符串,表示小X的基因。
第三行为一个长度为 L2 的字符串,表示肥胖基因。数据保证 L1>L2。
【输出描述】
输出一行包含两个整数,表示被基因墨水染成了红色的字符个数和所需的基因锁数量,两数之间严格用一个空格隔开。
【样例输入】
16 3 CGCGCATCGCATTAGG CGC
【样例输出】
8 2