1114-1115膜你赛
day1:
T1:
Jzyz的信息学竞赛带动五科竞赛的发展,202x年暑期举行大规模的竞赛招新活动。
现在有N组学生要参加学科竞赛,现在已经知道每组学生的学生个数,学校要求每组的人数不能超过R,不得低于L(保证L<=R),每次你可以在某组中选出一个学生把他安排到另外一组中,问最少需要调整多少次才使得N组的人都能满足要求。
题解:贪心;
T2:
小x大学毕业后,进入了某个公司做了高层管理,他每年的任务就是检查这个公司在全国各地N个分公司的各种状况,每个公司都要检查一遍,且只能检查一遍,也就是说这N个地方只能也必须去一次。
当然,小x每年可以选择从任意一个城市开始,任意一个城市结束。
现在给出这N个公司所在地任意两个地点飞机票的价格,现在小x为了给公司省下交通费,需要设计一个程序,来计算一下如何花费最低能够完成任务。
作为一名有过信息学竞赛经历的有志青年,小x给自己的路线又规定了一个约束条件:如果要访问编号为K的城市,那么编号比K小的所有城市或者在访问K之前访问,或者在访问K之后访问。这个条件也必须遵守。
比如:如果有3个城市:2 1 3和 3 1 2 的顺序都是合法的,但是 1 3 2的顺序就是非法的,因为比3小的1在3之前,2在3之后,和小x的要求冲突。
题解:
和矩阵取数有点像,都是只在最外层加数求最值;
区间dp;
但需要提醒的一点是做题一定不能只靠感觉(只靠感觉是要出事的),这道题实际上我想到了各种dp式,但是我【感觉】其中的很多都没法转移,但实质上,那些不仅可以转移,还转移得很漂亮;
最后的结果是我虽然过了,但写得挺暴力的,很不美观;
T3:
题意我还是不叙述了,比较麻烦;
标解是数位dp,我没学过,但这个问题比较简单,我成功找到了规律,然后调试完了,A了......
晚上学了一下数位dp,写了份代码,成功A掉;
day2:
T1:
给定一个长度为n的字符串,其中只包含小写字母a,b
你要将一些b改成a,使其中的任意连续k个字符至少包含q个a
你要计算出最小修改次数。
题解:贪心,从前往后扫,每次将最右端的'b'赋成'a'直到满足条件;
T2:
探险和迷宫是OI考试永恒的主题。
现在小x又一次要冒险了。不过这次是一个魔法结界。
这些魔法结界根据种类的不同分为N种,踏入每种结界,小x都会受到一定的伤害。为了拿到宝藏,这些伤害是必须要承受的。但是小x要尽可能地减少伤害,请你设计一条路线,使小x通过结界获取宝藏受到的伤害最少。
下面是一个魔法结界能量示意图,结界是一个正方形,内部有P种不同的能量,每种能量由不同的数字表示。小x从最上端开始走,每次可以走到与你所在的位置上下左右相邻的临位,或者在同种能量结界中任意传送。重复进入同一种能量结界不会再次受到伤害。
|111223|
|123333|
|112244|
|555556|
|577566|
|776666|
小x有H点生命值,请你在贸然行动之前先判断是否能够活着(生命值大于0)穿越结界拿到宝藏,如果能够,请求出最多剩余的生命值。
题解:
很明显的最短路问题,将同样颜色的格子视作一个点,然后根据相邻的关系连边,跑spfa即可;
T3:
平面上有N个线段,其中每一个线段的坐标都为整数且都平行坐标轴,请统计线段总覆盖的整数点的个数。
假设每一个点的坐标为x[i],y[i]。
题解:
这题没写出来,据估计,需要一种维护多维信息的算法;例如cdq;