A
Problem - A - Codeforces
当所有点的y坐标都不一样的时候,可以满足题意,当有两个点的y坐标相同时,如果另一个点y坐标在其上方则满足题意,否则不满足,输出两个点之间的距离
AC代码:
// #pragma GCC optimize(2)
// #pragma GCC optimize(3)
// #pragma GCC optimize("Ofast")
// #include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
B
Problem - B - Codeforces
当某个数出现次数是1的时候,只要往外拿结果不变,只有当某个数出现次数大于1,当它往外拿的时候,对应的个数就会+1
AC代码:
// #pragma GCC optimize(2)
// #pragma GCC optimize(3)
// #pragma GCC optimize("Ofast")
// #include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
C
Problem - C - Codeforces
multiset应用,c++语言中,multiset是库中一个非常有用的类型,它可以看成一个序列,插入一个数,删除一个数都能够在O(logn)的时间内完成,而且他能时刻保证序列中的数是有序的,而且序列中可以存在重复的数。该题把题意读懂就好了,根据贪心,先对序列进行从小到大排序,这样前面的数*x后一定会得到后面的数,就不用再回来浪费时间了
AC代码:
#pragma GCC optimize(2)
#pragma GCC optimize(3)
#pragma GCC optimize("Ofast")
#include
// #include
// #include
// #include
// #include
// #include
// #include
// #include
// #include
// #include
// #include
// #include
// #include
// #include
multiset: