- 博客(5)
- 收藏
- 关注
原创 hdu 6058 链表 枚举
考虑每个数的贡献,即满足区间第k大为该数的区间个数。其实就是对于两边比起大的数,两边卡出比该数大的个数为k - 1.用链表维护,考虑从小到大枚举,枚举完成后删除该点,保证每次枚举链表中都是比其大的数。O(n*k)写的挫#include #include #include #include using namespace std;const int MAXN =
2017-08-01 21:18:37 404
原创 hdu 6052单调栈 双指针
看了别人题解#include #include #include #include using namespace std;typedef long long ll;const int MAXN = 110;int n, m, color[MAXN][MAXN];struct Node{ int row, col; Node(){} Node(int _i, int _
2017-07-29 16:42:10 441
原创 hdu 6053 TrickGCD 容斥 莫比乌斯
比赛没搞出来。不知道借助莫比乌斯函数容斥。菜。 枚举除数时,除数相同的为一块,还可以优化。 #include <cstdio>#include <cstring>#include <algorithm>#include <iostream>using namespace std;typedef long long ll;const int MAXN = 1e5 + 10;const
2017-07-27 21:38:16 260
原创 hdu 6038 Function (思维题搞一搞)
f函数的限制关系形成多个环,b的排列也形成多个循环。f中每个环要合法赋值,环的大小要能被b的某个环的大小整除,方案为b环的大小。再把f每个环的赋值方案相乘就是答案。例如f有环4,6,8。b环 2,3。ans= (2 )* (2 + 3)*(2)#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>#
2017-07-26 10:33:58 242
原创 hdu 6043
#include int main(){ long long n, k; int cas = 1; while (scanf("%lld%lld", &n, &k) != EOF){ long long ans; if (k n) ans = k; else{ k -= n
2017-07-26 10:22:26 316
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人