# include <bits/stdc++.h> using namespace std; const int N = 2050; int n,m; int lowbit(int x) {return x & -x;} struct _2wBIT { int a[N][N]; void clear ...
分类:
其他好文 时间:
2020-11-01 09:41:49
阅读次数:
19
1.树的同构 思路:因为他是只交换左右子节点,就可以发现同构的树的父亲节点是相同的,所以你只要记住一个结点的父亲节点是什么,判断两棵树上相同点的父亲节点是否相同,就可以判断是否同构。 最后判断下为只有一个结节点的特殊情况。 /* n==1的情况是不符合的 */ #include<bits/stdc+ ...
分类:
其他好文 时间:
2020-11-01 09:39:49
阅读次数:
16
魔改一下nlogn求最长不下降子序列的模板就行 对于不能修改的位置 他们肯定是存在答案里面的 那么维护答案序列最后的不可修改位置 设为las 如果新加入的数的位置小于等于las 则跳过 否则 维护las 并且把las以后的序列清空 #include<bits/stdc++.h> using name ...
分类:
其他好文 时间:
2020-10-30 12:51:14
阅读次数:
20
1. 标准的卢卡斯定理加数位dp,主要是算C(n,i)*C(n,2*i)。 但由于这题的模数是质数,就不需要考虑很多东西,如:是否超过上限了、是否有连续的进位。 1 #include<bits/stdc++.h> 2 using namespace std; 3 typedef long long ...
分类:
其他好文 时间:
2020-10-30 12:28:57
阅读次数:
17
去年比赛的时候虽然对了,但写的好麻烦,以至于后面不敢再写这道题,今天又写了一遍,贴出来做纪念。 #include<stdio.h> #include<bits/stdc++.h> using namespace std; #define ll long long #define io_opt ios ...
分类:
其他好文 时间:
2020-10-27 11:46:36
阅读次数:
32
C. 前缀和。 #include <bits/stdc++.h> using namespace std; #define maxn 300000 #define INF 10000000 char c[maxn]; int n, ans = INF, sumB[maxn], sumW[maxn]; ...
分类:
其他好文 时间:
2020-10-26 11:41:45
阅读次数:
22
7-9 小字辈: 开始使用并查集暴力做的,结果超时。 正确思路: 用嵌套的vector存储每个人的下一辈有谁,之后记录祖宗,再dfs。 之前学STL的时候没学vector,之前学习的dfs也差不多忘了,通过这道题再复习了一下。 代码如下: #include<bits/stdc++.h> using ...
分类:
其他好文 时间:
2020-10-26 11:18:47
阅读次数:
82
什么是线性表 ? 线性表是 n 个数据元素的有限序列,最常用的是链式表达,通常也叫作线性链表或者链表。在链表中存储的数据元素也叫作结点,一个结点存储的就是一条数据记录。每个结点的结构包括两个部分: 第一是具体的数据值 第二是指向下一个结点的指针 这是一个单项链表 如果最后一个指向第一个就会形成一个循 ...
分类:
其他好文 时间:
2020-10-24 11:54:47
阅读次数:
41
算是入门pwn的第一道题吧 先拖进ida查看 F5查看伪代码: int __cdecl main(int argc, const char **argv, const char **envp) { char s; // [rsp+1h] [rbp-Fh] puts("please input"); ...
分类:
其他好文 时间:
2020-10-24 10:22:33
阅读次数:
21
C. 如果S不等于1e9的话,可以直接放上k个S,再把剩下的所有数都写成1e9。如果S等于1e9,那么可以把剩下所有的数都写成1; #include <bits/stdc++.h> using namespace std; #define MAXX 1000000000 int n, S, K; i ...
分类:
其他好文 时间:
2020-10-24 09:45:15
阅读次数:
19