摘要:
Easy Version Hard Version Hard Version的做法可以从Easy Version 用数据结构优化得到。 首先我们想一下,什么情况需要进行操作?显然是\(a_i!=b_i\)的时候,并且当\(a_i>b_i\)的时候将会无解。 那么当\(a_i<b_i\)的时候,应该怎 阅读全文
摘要:
C 这么小的数据范围,想必胡搞就可以了。 #include<iostream> #include<cstdio> #include<algorithm> #include<cstring> using namespace std; int n,m,k; struct cll{ int p; int 阅读全文
摘要:
Link C 分类讨论贪心 显然的,正面考虑怎么拼团会很麻烦,所以我们从另一个视角考虑,求出可能的最大团数,然后看一看怎么踢人能够使落单的最少。 当K为偶数的时候,显然最大团数就是\((n+m*2)/k\),而当K为奇数的时候,显然男生抱团需要至少一个男生,女生抱团也需要至少一个男生,最大团数就是\ 阅读全文
摘要:
Link A 很简单 B sort+struct+cmp函数 C 排个序举行 D 显然的,我们可以从最小的开始进行合并,合并的越多越好。但是可以注意到\(S_i\)的跨度相当的大,这怎么办呢? 我们可以使用STl中的map来解决,每一次取出map.begin()出来并且将其删除来解决。 E 一个很简 阅读全文