题目带 算法/数据结构
cnyali_czy
Interesting~~~
展开
-
Luogu P1090、1334、2664+队列
我的天啊,这三题code都一样原创 2017-02-08 17:30:14 · 306 阅读 · 0 评论 -
Luogu P1616 疯狂的采药+完全背包
不用markdown确实不那么习惯~~题目大意分析原题是0-1背包,这题就变成完全背包了~~~完全背包与0-1背包几乎没有区别666丢代码跑Code#include#includeusing namespace std;int i,m,n,j,k;int a[10001],w[10001],ans[100001];int main(){ cin原创 2017-02-10 14:09:24 · 347 阅读 · 0 评论 -
Luogu P2970 自私的放牧+线段覆盖
题目大意FJ有一群牛,她们只喜欢在一个特定的地方吃草。现在给你范围,求最多能有几头Cow能同时吃草。分析这个题目其实有点类似线段覆盖问题。思路稍微想想就能出来:先 多关键字排序(后端点在前面、长度长一些),然后从第一头牛开始贪心,只要没有公共部分就ans++,然后记录下来之前是那一头牛被“贪心”了。代码#include<iostream>#include<cstdio>#include<cst原创 2017-01-19 10:54:56 · 251 阅读 · 0 评论 -
Luogu P1795 无穷的序列+bitset的福利
题目大意有一个无穷序列如下:110100100010000100000……请你找出这个无穷序列中指定位置上的数字。分析观察1的位置就会发现有规律。1的位置为:1 2 4 7 11…… 所以1的位置可以记录下来。但是我还是有N次没A!我真%我自己一堆代码代码1(70分,纯粹暴力)不TLE就怪了#include<iostream>using namespace std;int i,m,n,j,k;原创 2017-01-26 19:25:36 · 432 阅读 · 0 评论 -
Luogu P2925 干草出售+0-1背包
题目大意FJ要去买干草,卖方像LK一样抠,只一包一包地卖,每包的体积不同。FJ只能买C (1≤C≤50000) 个单位的干草,卖方有H (1≤H≤5000) 包干草,每一包都有它的体积Vi (l≤Vi≤C)分析本题中,每包干草的成本=价值,于是可以直接用动态规划,转化成0-1背包问题代码#include<iostream>#include<cstdio>using namespace std;原创 2017-01-16 12:35:22 · 319 阅读 · 0 评论 -
Luogu P1216 数字金字塔+动态规划
题目大意观察下面的数字金字塔。 写一个程序来查找从最高点到底部任意处结束的路径,使路径经过数字的和最大。每一步可以走到左下方的点也可以到达右下方的点。 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5上面的例子中7->3->8>7>5最大,为30分析还有什么犹豫的?直接动归! 令a[i][j]为从第i行第j类开始往下走的最大值。那么a[i][j]=max(原创 2017-01-28 15:06:35 · 1260 阅读 · 0 评论 -
Luogu P1102 A-B数对+map
题目大意给出一串数以及一个数字C,要求计算出所有A-B=C的数对的个数。分析本题有如下几种思路暴力枚举 O(n^2)桶排 炸内存REmap大法好那什么是map呢?才不告诉你。思路1代码#include<bits/stdc++.h>using namespace std;int i,m,n,j,k;int a[200001];bool cmp(int a,int b){ ret原创 2017-01-24 13:28:36 · 393 阅读 · 0 评论 -
二叉树、二叉堆
妈呀,好久没写blog了……来讲讲二叉堆定义二叉堆是一个完全二叉树,且每个根节点的权值<(可以重载)它的儿子节点 那么什么是完全二叉树呢? 看图找规律吧~ - 左边为满二叉树 - 右边为完全二叉树 - 红色部分表示被节点被删去现在懂了吧!实现/*以下代码全部演示堆排序*/##include<iostream>#include<cstdio>#define maxn 10原创 2017-06-04 23:04:01 · 294 阅读 · 0 评论