多校联合训练
ltwy123
淡定淡定~
展开
-
HDU 3530 RMQ+twopointer/单调队列
题意: 给定一个序列, 让你寻找一个最长的区间,这个区间满足最大值减去最小值大于等于m小于等于k,求这个长度1. RMQ + 二分#include <iostream>#include <cstring>#include <cstdio>#include <algorithm>#include <cmath>using namespace std;int n,m,k;int a[100原创 2015-08-17 00:23:00 · 495 阅读 · 0 评论 -
hdu 5288 思维技巧
算贡献乱搞即可。。 然而。。不会搞。。。好不容易才搞过。。。#include <iostream>#include <cstring>#include <cstdio>#include <algorithm>#include <vector>#include <queue>#include <stack>#include <cmath>using namespace std;#de原创 2015-08-19 15:58:07 · 339 阅读 · 0 评论 -
hdu 5289 单调队列
题意: 。。。思路:单调队列 rmq + 二分 #include <iostream>#include <cstring>#include <cstdio>#include <algorithm>#include <vector>#include <queue>#include <stack>#include <cmath>using namespace std;#define r原创 2015-08-20 10:20:40 · 382 阅读 · 0 评论 -
hdu 5299 树上博弈
题意:有若干个圆, 互相之间有包含关系或者是并列关系,每个人都可以拿走一个圆以及这个圆内部的圆,问最后获胜的人是谁。思路: 把圆转化成一棵树先。。然后根据定理。。dfs一遍就能求出来了 定理如下: 1. 叶子节点的sg为0; 2. 其它节点为它的子节点的异或值+1#include <bits/stdc++.h>using namespace std;in原创 2015-08-21 15:14:36 · 564 阅读 · 0 评论 -
hdu 3967 数位dp
题意:求a-b区间内的满足可以把一个数左右分开从而使分开的两个数的和被k除尽的数的个数。这么道一般的数位dp。。 居然没做出来... 智商不够用啊。。#include using namespace std;typedef long long ll;int num[30];ll dp[30][30][30][2][30];int k; int pos;lon原创 2015-10-05 13:36:59 · 550 阅读 · 0 评论 -
hdu 3971
杭电2015级新生如何加入ACM集训队? Play With SequenceTime Limit: 10000/5000 MS (Java/Others) Memory Limit: 65768/65768 K (Java/Others)Total Submission(s): 452 Accepted Submission(s): 228原创 2015-10-03 12:22:43 · 491 阅读 · 0 评论 -
hdu 5381 莫队...
The sum of gcdTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 854 Accepted Submission(s): 363Problem DescriptionYou have an a原创 2015-09-18 19:42:23 · 451 阅读 · 0 评论 -
hdu 3943 数位dp+二分
题意: 求p - q 范围内满足有x个4和y个7的第K个数。思路: 数位dp。然后二分位置。code#include <bits/stdc++.h>using namespace std;typedef long long ll;int T;ll p, q;int query;int x, y;int num[10010];ll dp[100][100][100];ll dfs(i原创 2015-10-24 20:38:50 · 408 阅读 · 0 评论 -
hdu 3944 lucas
需要分情况讨论。 然后求组合数 套上lucas。#include using namespace std;typedef long long ll;ll n, k, p;ll powmod(ll a, ll b){ ll res = 1; a %= p; while(b){ if(b&1) res = res*a%p; b>>=1; a = a*a%p; } return原创 2015-10-24 13:03:20 · 399 阅读 · 0 评论