Codeforces Round #375 (Div. 2) Analyses

神他喵难的一场cf 

A.The New Year: Meeting Friends

Problems:三个人要走到一个地方,给定x1,x2,x3,问最小代价。

Analysis:思维题,讨论一下就知道答案为max({x1, x2, x3})-min({x1, x2, x3})

Tags:Math, Sorting

B.Text Document Analysis

Problems:给定一串字符串,只会出现字母,_以及左右括号,问括号外最长的单词长度以及括号内有几个单词

Analysis:一开始以为括号可以嵌套,感觉巨烦,然而,简单模拟

Tags:Implementation

C.Polycarp at the Radio

Problems:题面神他喵的烦,其实就是给定一串序列,让你将其修改,使得1-m数目最小的出现次数最大,且修改次数最小

Analysis:首先出现次数的答案是固定的,即n/m(平均分配)。接下去就是分配的问题了,对于那些>m的数,如果存在一个数小于min(m,n/m),那么就直接修改,否则就不动。之后寻找是否有出现次数<n/m的数,将那些出现次数>n/m的数修改过去就好了

Tags:Greedy

 

D.Lakes in Berland

Problems:给你一个地图,其中"*"为sand,"."为lake,一个湖的定义为不和边界有交点并被沙子包围,填湖的代价为湖的面积,求湖的个数<=k的最小代价

Analysis:这题反而水了,直接dfs出湖,sort一下贪心就可以了。

Tags:Greedy, Dfs and similar

 

E.One-Way Reform

Problems:将一个无向图修改,使得入度==出度的点数尽可能的多,并输出方案

Analysis:首先度数为奇的点必然不是答案,那么Res=n-度数为奇的点,再考虑这些点,每次选择从一个点出发进行修改一条路径(直到另一个奇点),经过的点都走偶数次,直到该点度数为0,即可

Tags:Greedy, Dfs and similar, Graphs

 

F.st-Spanning Tree

Problems:给你一张图,求一颗生成树,使得源点s度数不超过ds,汇点t度数不超过dt,并按照输入顺序输出

Analysis:先考虑和s,t无关的点集,每个点集只有三种连法

                     1. 和s和t均相连:标记

                     2. 和s或者t中的一个相连:直接和另一个点相连。

                     3. 孤立点:无法构成要求的生成树

       对于这些标记点集,若不和s和t联通,则考虑是否可以将s和t相连,若不可以,则无法构成要求的生成树

       剩下的点只需要考虑s或者t相连即可

Tags:Greedy, Dsu, Graphs