摘要: B. 考虑Lucas定理的结论,\( \binom{n}{m} \bmod p \neq 0 \)等价于在\(p\)进制下\(m\)的每一位都小于等于\(n\)的对应位 因此放到二进制下就是子集关系 高维前缀和 1 #include<bits/stdc++.h> 2 #define maxn 200 阅读全文
posted @ 2020-05-02 18:32 uuzhatetree 阅读(736) 评论(0) 推荐(0)
摘要: A. 签到 1 #include<bits/stdc++.h> 2 using namespace std; 3 int n,m,k,r,c; 4 int Ans[50005]; 5 int main() 6 { 7 scanf("%d%d%d%d%d",&n,&m,&k,&r,&c); 8 for 阅读全文
posted @ 2020-04-09 16:16 uuzhatetree 阅读(338) 评论(0) 推荐(0)
摘要: A. 考虑\(k\)次多项式你问\(k+1\)和\(k+2\)个点值得到的是一样的,也就是新增的最高次系数为\(0\) 每次高斯消元解个方程就行了 1 #include<bits/stdc++.h> 2 #define ll long long 3 using namespace std; 4 co 阅读全文
posted @ 2020-04-04 17:55 uuzhatetree 阅读(291) 评论(0) 推荐(0)
摘要: B. 离线线段树分治维护按秩合并的并查集裸题。 1 #include <bits/stdc++.h> 2 3 using namespace std; 4 5 const int MAXN = 100000 + 10; 6 const int MAXV = 9; 7 8 typedef pair<i 阅读全文
posted @ 2020-04-04 17:46 uuzhatetree 阅读(249) 评论(0) 推荐(0)
摘要: A. 设坐标为\((i,j)\) 考虑从任意一个点出发,每走一步\((i+j)\)的奇偶性就会发生变化,那么我们最后的局面就是\(2\)在奇数格\(1\)在偶数格或者\(2\)在偶数格\(1\)在奇数格 取较小即可 1 #include<bits/stdc++.h> 2 using namespac 阅读全文
posted @ 2020-04-02 17:15 uuzhatetree 阅读(250) 评论(0) 推荐(0)
摘要: D. 细节题。 1 #include <bits/stdc++.h> 2 3 using namespace std; 4 5 const int MAXN = 500 + 10; 6 7 char a[MAXN][MAXN]; 8 9 int n, m; 10 11 int main() { 12 阅读全文
posted @ 2020-03-24 16:33 uuzhatetree 阅读(144) 评论(0) 推荐(0)
摘要: A. 签到题。排序后贪心。 1 #include <bits/stdc++.h> 2 3 using namespace std; 4 5 const int MAXN = 100000 + 10; 6 7 int n, x; 8 int a[MAXN]; 9 10 int main() { 11 阅读全文
posted @ 2020-03-18 21:49 uuzhatetree 阅读(261) 评论(0) 推荐(0)
摘要: A. 就是个带限制的最短路,多开一维状态\(dis(i,j)\)表示到点\(i\),走的路程是\(j\)的最小值 注意各种细节就行了 1 #include<bits/stdc++.h> 2 using namespace std; 3 struct Point 4 { 5 int x,y; 6 Po 阅读全文
posted @ 2020-03-18 21:25 uuzhatetree 阅读(707) 评论(0) 推荐(0)
摘要: solved:9/13 upsolved:9/13 A. 数据范围很小,bfs + 去重就能过。注意出口只有一端。 1 #include <bits/stdc++.h> 2 3 using namespace std; 4 5 const int N = 6; 6 const int SEED = 阅读全文
posted @ 2020-03-14 17:56 uuzhatetree 阅读(1525) 评论(0) 推荐(0)
摘要: solved:7/13 upsolved:7/13 A. 把每种算法集合看成点,然后一个点向其删掉一个的子集连边,然后问题就变成了在一个DAG中选一些没有先后关系的点 这个问题是最长反链,然后最长反链变成了最小链覆盖 DAG上最小链覆盖可以拆点建二部图,答案是\(n-\)最大匹配 1 #includ 阅读全文
posted @ 2020-03-13 21:28 uuzhatetree 阅读(354) 评论(0) 推荐(0)