
Leetcode
文章平均质量分 66
曾经的OIer长大啦!
Mininda
云雀叫了一整天
展开
-
【Leetcode2196】从上到下打印二叉树 III
用BFS来从上到下从左到右的记录,一旦到达发现当前行数遍历完了就收手放到vector里用一个计数器cnt记录下 如果是单数行就用queue记录偶数行就用stack记录我这个算法有点慢了 因为搞进来搞回去常数有点大 我看也可以直接用vector的reverse或者就开一个双端队列节省空间class Solution {private:queue<TreeNode*> Q;queue<int> curQ;stack<int> S;int CurrentNo.原创 2021-12-22 10:18:55 · 223 阅读 · 0 评论 -
【Leetcode 240】搜索二维矩阵 ||
当我们要寻找一个数x,首先与最后一行的第一列的数比较。如果发现比这个数小,我们便可以知道这一行都比x大(因为每一列递增),这一行可以排除。这样不断排除直到x比最后一列的数大。同理,然后我们通过比较第一列的最后一行,如果x小,说明这一列都小,删除掉,直到找到正确答案using namespace std;class Solution {public: bool searchMatrix(vector<vector<int>>& matrix, int tar.原创 2021-06-01 17:42:09 · 166 阅读 · 0 评论 -
【Leetcode 105】从前序与中序遍历序列构造二叉树
了解书结构的基础题,此题的关键是在于找到根的位置。在前序遍历(根左右)中,根永远是第一个,通过确定了根,我们可以通过在后序遍历中找到根的位置来判断出左子树和右子树。通过递归解决问题/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left.原创 2021-06-01 17:33:48 · 156 阅读 · 0 评论 -
【noip2010】关押罪犯 带权并查集
题意:给你1~n个罪犯,ai与bi在一个监狱会产生仇恨值为ci。问如何将这n个罪犯分配到2个监狱中,使最大仇恨值最小。 由于要使最大仇恨值最小,所以我们将仇恨值降序。对于每个ai,bi判断是否能使他们不在一个监狱中,可以就把状态记录下来,否则就输出。fa[i]存的是与i是同个连通块的,,fa[i+n]是与i必须不是一个连通块的。因为与ai在一个连通块的必定要与bi不在一个连通块,a...原创 2017-12-14 20:10:49 · 901 阅读 · 1 评论 -
【洛谷2024】食物链 并查集
食物链题目描述动物王国中有三类动物 A,B,C,这三类动物的食物链构成了有趣的环形。A吃 B,B吃 C,C吃 A。现有 N 个动物,以 1- N 编号。每个动物都是 A,B,C 中的一种,但是我们并不知道它到底是哪一种。有人用两种说法对这 N 个动物所构成的食物链关系进行描述:第一种说法是“1 X Y”,表示 X和 Y 是同类。第二种说法是“2 X Y”,表示 X...原创 2017-11-11 22:34:44 · 306 阅读 · 0 评论 -
【NOIP2013】货车运输 最大生成树+lca
NOIP2013货车运输 题目描述 A 国有 n 座城市,编号从 1 到 n,城市之间有 m 条双向道路。每一条道路对车辆都有重量限制,简称限重。 现在有 q 辆货车在运输货物,司机们想知道每辆车在不超过车辆限重的情况下,最多能运多重的货物。输入 第一行有两个用一个空格隔开的整数 n,m,表示 A 国有n 座城市和 m 条道路。 接下来 m 行每行 3 个整...原创 2017-11-04 08:23:33 · 687 阅读 · 0 评论 -
【洛谷1892】团伙 并查集
题意题面说的很清楚同noip2010关押罪犯 传送门:http://blog.youkuaiyun.com/dadatu_zhao/article/details/78806584#include<iostream>#include<cstring>#include<cstdio>using namespace std;int n,m,ans=0;...原创 2017-12-14 20:37:21 · 642 阅读 · 0 评论 -
【洛谷1346】电车 最短路
是默认道路的话两者连接花费就是0,不是默认道路的话花费就为1,构完图后跑一遍最短路即可。原创 2017-11-07 08:09:40 · 1094 阅读 · 1 评论 -
【洛谷2912】[USACO08OCT]牧场散步Pasture Walking
牧场散步Pasture Walking题目描述The N cows (2 <= N <= 1,000) conveniently numbered 1..Nare grazing among the N pastures also conveniently numbered 1..N. Mostconveniently of all, cow i is grazing in p...原创 2017-11-09 21:09:50 · 391 阅读 · 0 评论 -
【清北学堂济南刷题班】集合
集合【问题描述】给定一个可重集合,一开始只有一个元素0 。然后你可以操作若干轮,每一轮,你需要对于集合中的每个元素 x 进行如下三种操作之一:1、将 x 变为 x +1。2 、将 x 分裂为两个非负整数 y,z,且满足 x = y + z 。3、什么都不做。每一轮,集合中的每个元素都必须进行上面三个操作之一。对于一个最终的集合,你的任务是判断至少进行了多少轮。【原创 2017-10-31 18:40:08 · 1924 阅读 · 1 评论 -
【清北学堂济南刷题班】仓库
仓库【问题描述】JD 公司是 C 国最大的网上商城。JD公司为了保证快递质量决定修建仓库,对商品进行配送。已知 C 国有 n 个城市,城市间有 m 条双向道路,每条路有限重。JD公司想修建一些仓库来实现对 C 国所有城市的配送,仓库必须修建在某个城市。送达每个城市的货物可以由任意一个仓库发出,不过在运输途中必须满足限重的要求。现在 JD 公司的高管在考虑要修建多少个原创 2017-11-01 19:26:26 · 753 阅读 · 0 评论 -
【hdu4018】Ant Trip 欧拉图
Ant TripTimeLimit: 2000/1000 MS (Java/Others) Memory Limit:32768/32768 K (Java/Others)Total Submission(s): 3433 Accepted Submission(s): 1362ProblemDescriptionAnt Country consist of N原创 2017-11-06 22:29:34 · 454 阅读 · 0 评论 -
【洛谷1339】[USACO09OCT]热浪Heat Wave spfa
题意:给你张图给你起点终点叫你求最短路spfa板子 #include<iostream>#include<queue>#include<cstring>#include<cstdio>#define N 20050#define INF 0x3f3f3f3fusing namespace std;int n,m,a,b,...原创 2017-11-06 22:35:09 · 289 阅读 · 0 评论 -
【洛谷1144】最短路计数 最短路
最短路计数题目描述给出一个N个顶点M条边的无向无权图,顶点编号为1~N。问从顶点1开始,到其他每个点的最短路有几条。输入输出格式输入格式: 输入第一行包含2个正整数N,M,为图的顶点数与边数。接下来M行,每行两个正整数x, y,表示有一条顶点x连向顶点y的边,请注意可能有自环与重边。输出格式: 输出包括N行,每行一个非负整数,第i行输出从顶点1到顶点i有多少条不...原创 2017-11-07 08:56:52 · 1032 阅读 · 0 评论 -
【洛谷1119】灾后重建 最短路
灾后重建题目背景B地区在地震过后,所有村庄都造成了一定的损毁,而这场地震却没对公路造成什么影响。但是在村庄重建好之前,所有与未重建完成的村庄的公路均无法通车。换句话说,只有连接着两个重建完成的村庄的公路才能通车,只能到达重建完成的村庄。题目描述给出B地区的村庄数N,村庄编号从0到N-1,和所有M条公路的长度,公路是双向的。并给出第i个村庄重建完成的时间t[i],你可以认为是同时开始...原创 2017-11-07 14:32:20 · 353 阅读 · 0 评论 -
【洛谷1613】跑路 倍增+最短路
跑路题目描述小A的工作不仅繁琐,更有苛刻的规定,要求小A每天早上在6:00之前到达公司,否则这个月工资清零。可是小A偏偏又有赖床的坏毛病。于是为了保住自己的工资,小A买了一个十分牛B的空间跑路器,每秒钟可以跑2^k千米(k是任意自然数)。当然,这个机器是用longint存的,所以总跑路长度不能超过maxlongint千米。小A的家到公司的路可以看做一个有向图,小A家为点1,公司为点n,每条...原创 2017-11-07 17:24:31 · 314 阅读 · 0 评论 -
【洛谷1330】封锁阳光大学 染色问题
封锁阳光大学题目描述曹是一只爱刷街的老曹,暑假期间,他每天都欢快地在阳光大学的校园里刷街。河蟹看到欢快的曹,感到不爽。河蟹决定封锁阳光大学,不让曹刷街。阳光大学的校园是一张由N个点构成的无向图,N个点之间由M条道路连接。每只河蟹可以对一个点进行封锁,当某个点被封锁后,与这个点相连的道路就被封锁了,曹就无法在与这些道路上刷街了。非常悲剧的一点是,河蟹是一种不和谐的生物,当两只河蟹封...原创 2017-11-07 22:03:19 · 429 阅读 · 0 评论 -
【洛谷P3383】【模板】线性筛素数
【模板】线性筛素数Description如题,给定一个范围N,你需要处理M个某数字是否为质数的询问(每个数字均在范围1-N内)Input:第一行包含两个正整数N、M,分别表示查询的范围和查询的个数。接下来M行每行包含一个不小于1且不大于N的整数,即询问该数是否为质数。Output输出包含M行,每行为Yes或No,即依次为每一个询问的结果。Sample Input...原创 2017-10-30 11:04:42 · 743 阅读 · 0 评论 -
【bzoj1968】 [Ahoi2005]COMMON 约数研究
1968: [Ahoi2005]COMMON 约数研究Time Limit: 1 Sec Memory Limit: 64 MBSubmit: 2877 Solved: 2146[Submit][Status][Discuss]DescriptionInput只有一行一个整数 N(0 < N < 1000000)。Output只有一行输出,为...原创 2017-11-06 22:15:42 · 336 阅读 · 0 评论 -
【洛谷1965】转圈游戏 蒙哥马利快速幂模算法
转圈游戏题目描述n 个小伙伴(编号从 0到 n-1)围坐一圈玩游戏。按照顺时针方向给 n个位置编号,从0 到 n-1。最初,第 0号小伙伴在第 0 号位置,第 1 号小伙伴在第 1号位置,……,依此类推。游戏规则如下:每一轮第 0号位置上的小伙伴顺时针走到第 m号位置,第 1 号位置小伙伴走到第 m+1 号位置,……,依此类推,第n − m号位置上的小伙伴走到第 0号位置,第...原创 2017-11-08 08:52:43 · 708 阅读 · 0 评论 -
【noip2016】组合数问题 组合+前缀和
组合数问题题目描述组合数C_n^mCnm表示的是从n个物品中选出m个物品的方案数。举个例子,从(1,2,3) 三个物品中选择两个物品可以有(1,2),(1,3),(2,3)这三种选择方法。根据组合数的定义,我们可以给出计算组合数的一般公式:C_n^m=\frac{n!}{m!(n- m)!}Cnm=m!(n−m)!n!其中n! = 1 × 2 × · · · × n小葱想...原创 2017-11-09 09:18:51 · 1094 阅读 · 0 评论 -
【NOIP 2015】跳石头 二分答案
NOIP2015跳石头 题目描述一年一度的“跳石头”比赛又要开始了!这项比赛将在一条笔直的河道中进行,河道中分布着一些巨大岩石。组委会已经选择好了两块岩石作为比赛起点和终点。在起点和终点之间,有 N 块岩石(不含起点和终点的岩石)。在比赛过程中,选手们将从起点出发,每一步跳向相邻的岩石,直至到达终点。为了提高比赛难度,组委会计划移走一些岩石,使得选手们在比赛过程中的最短跳...原创 2017-11-06 21:48:23 · 763 阅读 · 0 评论 -
【NOIP2014】联合取值
联合取值题目描述无向连通图G 有n个点,n - 1 条边。点从1 到n依次编号,编号为 i 的点的权值为W i ,每条边的长度均为1。图上两点( u , v )的距离定义为u 点到v 点的最短距离。对于图G上的点对( u, v),若它们的距离为2 ,则它们之间会产生Wu×Wv 的联合权值。请问图G 上所有可产生联合权值的有序点对中,联合权值最大的是多少?所有联合权值之和是多少?输入...原创 2017-11-08 20:14:29 · 278 阅读 · 0 评论 -
【LCA倍增模板】【poj1330】最近公共祖先
Nearest Common AncestorsTime Limit: 1000MSMemory Limit: 10000KTotal Submissions: 31027Accepted: 15800DescriptionA rooted tree is a well-known data struc原创 2017-11-01 23:27:43 · 306 阅读 · 0 评论 -
【poj3617】Best Cow Line 贪心
Best Cow LineTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 26954 Accepted: 7284DescriptionFJ is about to take his N (1 ≤ N ≤ 2,000) cows to the annual原创 2017-11-08 09:16:55 · 305 阅读 · 0 评论 -
【poj1222】EXTENDED LIGHTS OUT 模拟
如果我们枚举每一个灯开还是关就是2^30显然不可行。我们就要想该如何优化使枚举数尽可能的变小。我们先假设第一列已经固定了。那么想要改变第一列的状态只能通过改变第二列的状态。如果第一列有灯没关,在第二列的同一行这个按钮必须按下。以此类推,如果第一列确定,那么后面每一列就已经确定了。所以我们只需要枚举第一列即可,瞬间缩到2^5=32次。原创 2017-11-08 15:02:30 · 302 阅读 · 0 评论 -
【poj2487】Farey Sequence 欧拉函数
欧拉函数模板欧拉函数的三个性质1 当q为质数时f(q)=q-12 如果i/p是p的质数时f(i)=f(i/p)*p3 如果i/p不是p的质数时f(i)=f(i/p)*(p-1)原创 2017-11-08 22:05:59 · 273 阅读 · 0 评论 -
【poj2367】Genealogical tree 拓扑排序
Genealogical treeTime Limit: 1000MS Memory Limit: 65536K Total Submissions: 6167 Accepted: 4070 Special Judge DescriptionThe system of Martians' blood relations i...原创 2017-11-09 20:53:01 · 302 阅读 · 0 评论 -
【poj1852】Ants 乱搞
因为蚂蚁碰头之后速度啥的都没变,只是方向变了。那么就相当于两只蚂蚁擦肩而过。(好好理解一下)这样问题就很好解决了。原创 2017-11-09 22:31:19 · 308 阅读 · 0 评论 -
【bzoj1217】[HNOI2003]消防局的设立 贪心
[HNOI2003]消防局的设立 Description2020年,人类在火星上建立了一个庞大的基地群,总共有n个基地。起初为了节约材料,人类只修建了n-1条道路来连接这些基地,并且每两个基地都能够通过道路到达,所以所有的基地形成了一个巨大的树状结构。如果基地A到基地B至少要经过d条道路的话,我们称基地A到基地B的距离为d。由于火星上非常干燥,经常引发火灾,人类决定在火星上修建若干个消防局。消防局原创 2017-10-30 15:51:05 · 429 阅读 · 0 评论 -
【bzoj4551】树 并查集
4551: [Tjoi2016&Heoi2016]树TimeLimit: 20 Sec Memory Limit: 128 MBSubmit: 380 Solved: 234[Submit][Status][Discuss]Description在2016年,佳媛姐姐刚刚学习了树,非常开心。现在他想解决这样一个问题:给定一颗有根树(根为1),有以下两种操作:1.标记原创 2017-11-03 21:25:27 · 456 阅读 · 0 评论 -
【bzoj1015】[JSOI2008]星球大战 并查集
感悟:一开始没好好读题不知道没打之前的联通块数也得输出,调了两天才发现qwq 和bzoj4551一样,每次打掉一个星球就会产生若干个或不产生联通块,我们发现如果在线正着处理会很麻烦。所以我们离线处理倒着处理,我们先处理全被打完的时候,对于每次打掉的点我们再一个一个重新连上就好啦。cnt表示联通块数,used记录是否在联通块中,visit记录是不是打掉的星球。#include#原创 2017-11-05 16:32:27 · 346 阅读 · 0 评论 -
【bzoj1083】[SCOI2005]繁忙的都市 kruskal
早生个十年该多好啊原创 2017-11-09 17:29:17 · 270 阅读 · 0 评论 -
【洛谷3368】树状数组 2 树状数组+差分
树状数组 2题目描述如题,已知一个数列,你需要进行下面两种操作:1.将某区间每一个数数加上x2.求出某一个数的和输入输出格式输入格式: 第一行包含两个整数N、M,分别表示该数列数字的个数和操作的总个数。第二行包含N个用空格分隔的整数,其中第i个数字表示数列第i项的初始值。接下来M行每行包含2或4个整数,表示一个操作,具体如下:操作1:格式:1 x y k ...原创 2017-11-10 12:04:43 · 1389 阅读 · 0 评论 -
【bzoj1978】 [SDOI2009]HH的项链 树状数组
[SDOI2009]HH的项链Description HH 有一串由各种漂亮的贝壳组成的项链。HH相信不同的贝壳会带来好运,所以每次散步完后,他都会随意取出一段贝壳, 思考它们所表达的含义。HH 不断地收集新的贝壳,因此,他的项链变得越来越长。有一天,他突然提出了一个问题:某一段贝壳中,包含了多少种不同的贝壳?这个问题很难回答……因为项链实在是太长了。于是,他原创 2017-10-28 17:51:18 · 383 阅读 · 0 评论