数据结构与算法
数据结构与算法的相关博客。
Catigeart
这个作者很懒,什么都没留下…
展开
-
HDU - 2899 三分板题
借鉴博客若干。HDU - 2899#include <cstdio>#include <cmath>#include <algorithm>#define eps 1e-7using namespace std;double cal(double x, double y) { return 6*pow(x,7)+8*pow(x,6)+7*pow(x,3)+5*pow(x,2)-y*x;}int main(){ int t; double y原创 2021-04-26 21:51:23 · 161 阅读 · 0 评论 -
HDU - 4990 矩阵快速幂板子
如题,借鉴博客若干。对应版题:HDU - 4990#include <cstdio>#include <cstring>#define MAXN 3int n, mod;struct Mat { long long m[MAXN][MAXN]; void zero() { memset(m, 0, sizeof(m)); } void one() { memset(m, 0, sizeof(m)); for (int i=0; i<原创 2021-04-25 21:16:28 · 181 阅读 · 0 评论 -
POJ - 2456 Maximize the minimum(离散二分优化目标解)
POJ - 2456历尽各种二分以后,发现还是l+1<r的判定方法省事…以及注意一下在求某优化解和求某一确定目标的区别。#include <cstdio>#include <algorithm>#define MAXN 100000+5using namespace std;int a[MAXN];int n, c;inline bool judge(int k) { int lastp = 0; int cnt = 1; for (int i=原创 2021-04-14 20:32:17 · 134 阅读 · 0 评论 -
HihoCoder - 1174 拓扑排序·一(拓扑排序裸题)
#include <cstdio>#include <cstring>#include <vector>#include <queue>#define MAXN 100000+5using namespace std;vector<int> edge[MAXN];queue<int> q;int indeg[MAXN];inline void init(){ for(int i=0; i<MAXN;原创 2021-04-13 21:52:23 · 129 阅读 · 0 评论 -
最短路模板(Dijkstra && Floyd && Bellman-Ford && SPFA)
学习书籍博客若干,为自用模板,以下所有代码都可以在最短路版题HDU - 2544 最短路中AC。Dijkstra(堆优化)#include <cstdio>#include <cstring>#include <vector>#include <queue>#define MAXN 100+5#define MAXE 10000+5#define INF 0x3f3f3f3fusing namespace std;struct Edg原创 2021-04-13 21:40:31 · 139 阅读 · 0 评论 -
UVA - 437 The Tower of Babylon(SPFA解拓扑)
#include <cstdio>#include <cstring>#include <vector>#include <queue>#include <algorithm>#define INF 0x3f3f3f3f#define MAXN 30*3+5using namespace std;struct Box { int x,y,z; Box() = default; Box(int x, int y, int原创 2021-04-13 21:50:34 · 131 阅读 · 0 评论 -
背包问题模板
学习各种博客模板若干,如下为自用模板,命名还算清晰,仅供参考。#include <algorithm>#define MAXN 100+5using namespace std;int num;int weight;int weight2;int value;int part;int n[MAXN];int w[MAXN];int w2[MAXN];int v[MAXN];int p[MAXN];int dp[MAXN];void ZeroOne(){ /原创 2021-04-11 19:35:47 · 87 阅读 · 0 评论 -
CSU-ICPC2019年寒假集训结训测试 J-Boredom
DescriptionAlex doesn’t like boredom. That’s why whenever he gets bored, he comes up with games. One long winter evening he came up with a game and decided to play it.Given a sequence a consisting o...原创 2019-01-30 17:34:16 · 199 阅读 · 0 评论 -
非递归先序创建二叉树、非递归先序遍历二叉树(C语言代码)
关于用非递归方法对二叉树进行操作的原理已经有很多介绍,不再赘述,只简单介绍一下代码的思路:非递归先序创建二叉树的代码利用栈顶标记当前节点位,代码约定输入'#'时表示该位置没有输入,每次输入新元素都作两轮if判定(左右指示器方向,是否输入'#'),据此改变状态进行下一步的调整。非递归先序遍历二叉树使用栈模拟递归。#include<stdio.h>#include<stdlib.h>typedef char TreeDatatypedef struct BTreeN原创 2020-06-20 08:52:09 · 3792 阅读 · 3 评论 -
给定n位正整数a,去掉其中任意k个数字后,剩下的数字按原次序排列组成⼀个新的正整数,求组成的新数最小的删数方案(O((n-k)logk)优化)
问题描述给定n位正整数a,去掉其中任意k个数字后,剩下的数字按原次序排列组成⼀个新的正整数。对于给定的n和k,设计⼀个算法,找出剩下数字组成的新数最少的删数方案。这一道题来自zyq老师的算法分析与设计实验当中,因为做完以后发现网上没有类似方法的题解,于是索性上来CSDN发一篇。没错老师,这句话就是给您看的,这里的题解是从实验报告中拿出来发到CSDN的,而不是先有了网上的题解再抄到实验报告,博客上的插图也是从展示PPT上截的(认真)。解题思路可采取贪心算法求解。显然高位数位的数值大小更原创 2020-06-13 21:51:26 · 11967 阅读 · 1 评论