07 2021 档案

摘要:题目: 题目网址:1274 -- The Perfect Stall (poj.org) 思路: 给定N个牛,M个市场,每个牛都有几个最适的市场,需求市场对应奶牛的最多个数; 利用二分查找以及匈牙利算法进行匹配; 代码实现: #include<iostream> #include<string.h> 阅读全文
posted @ 2021-07-29 17:46 wateriness 阅读(55) 评论(0) 推荐(0)
摘要:题目: 题目网址:Problem - C - Codeforces 思路: 输入一个由0,1组成的图代表二维数组的道路有无; 在输入m给节点判断是否可以被去掉; 首先对数组进行初始化,在进行Floyd循环, 在对每一个节点进行判断 若w[cnt][res[i]] + w[re[i]] [res[i+ 阅读全文
posted @ 2021-07-28 14:06 wateriness 阅读(45) 评论(0) 推荐(0)
摘要:题目: 题目网址:Problem - 1874 (hdu.edu.cn) 思路: 给定n个点,m条道路;求S,T之间的最短路径; 首先将道路数据存储在二维数组里,在进行初始化, 将所有道路都设为最大值,相同的设为0; 在输入道路信息,对应存入数组里; 在进行Floyd算法循环,对应S,T输出答案; 阅读全文
posted @ 2021-07-28 13:56 wateriness 阅读(30) 评论(0) 推荐(0)
摘要:题目: 题目网址:Problem - 602C - Codeforces 思路: 有n个城镇,m条铁路,没有铁路的地方就有公路求火车和汽车后到的那个的最小时间 如果有直达的就看汽车,将铁路都设为最大其他为1; 没有直达,就对火车进行操作除铁路都设为最大; 对处理后的二维数组进行Floyd算法处理,输 阅读全文
posted @ 2021-07-27 14:53 wateriness 阅读(28) 评论(0) 推荐(0)
摘要:题目: 题目网址:Problem - 2544 (hdu.edu.cn) 思路: 给定n个路口,m个道路,求由第1个路口到第m个路口的最短距离; 先将道路的长度双向存储在一个数组里,在用Dijkstra算法预处理,找到最后第一个点的最优距离; Dijkstra算法:定义三个数组, 第一个用于存储所给 阅读全文
posted @ 2021-07-27 12:56 wateriness 阅读(74) 评论(0) 推荐(0)
摘要:题目: 题目网址:Problem - 1245D - Codeforces 思路: 给定n个城市要让这n个城市都通上电,可以在自己建电站,也可以去其他建立电站的城市接电线,求最少花费; 对数据进行预处理对所有费用数据进行排序从小到大; 然后在对从最小费用开始验算直到所有城市都有点,不能形成环,形成环 阅读全文
posted @ 2021-07-26 17:22 wateriness 阅读(45) 评论(0) 推荐(0)
摘要:题目: 题目网址:Problem - 707B - Codeforces 思路: 给定n个村庄,有m条路,有k个村庄有面粉 寻找一个面粉村庄到另一个不是面粉的村庄的最短路径 先存储道路再对村庄进行一边搜索寻找最短的; 代码实现: #include<stdio.h> int x[100007],y[1 阅读全文
posted @ 2021-07-26 15:40 wateriness 阅读(35) 评论(0) 推荐(0)
摘要:题目: 题目网址:Problem - 2586 (hdu.edu.cn) 思路: 一个村庄有n个房子,要求m次i,j距离; 首先把路都存储在栈组里, 在对每一次输入的i,j进行dfs搜索累加路径距离输出结果; 代码实现: #include<stdio.h> #include<vector> #inc 阅读全文
posted @ 2021-07-23 15:36 wateriness 阅读(46) 评论(0) 推荐(0)
摘要:题目: 思路: 给定一个1为根的树,求了L,R的LCA 利用bfs求各节点的深度,求L,R的最近公共祖先 利用倍增的方法把LR的深度升到同一级再共同向上寻找共同祖先 代码实现: #include <iostream> #include <cstring> #include <stdio.h> #in 阅读全文
posted @ 2021-07-23 11:06 wateriness 阅读(58) 评论(0) 推荐(0)
摘要:题目: 题目网址:3264 -- Balanced Lineup (poj.org) 思路: 对于输入的区间求出其中的最大值最小值的差值; 首先拥有RMQ算法初始化把区间最大值都运算出来; 然后在对每个输入的区间进行z值计算,在算出结果输出; 代码实现: #include <iostream> #i 阅读全文
posted @ 2021-07-22 09:35 wateriness 阅读(99) 评论(0) 推荐(0)
摘要:题目: 题目网站:https://codeforces.com/problemset/problem/813/C 思路: 要把一个没有颜色的树变成所给颜色的树,用两个数组存储树的关系,以及树的颜色; 在运用搜索的思想对颜色数组扫一遍,判断子节点与父节点颜色是否相同不同就ans++; 搜索完后就输出答 阅读全文
posted @ 2021-07-20 14:54 wateriness 阅读(42) 评论(0) 推荐(0)
摘要:题目: 思路: 在“.”的位置插入k个“X”保证所有“.’连贯; 代码实现: #include<iostream>#include<stdio.h>using namespace std;char Map[510][510];bool book[510][510];int n,m,k;void df 阅读全文
posted @ 2021-07-19 17:17 wateriness 阅读(59) 评论(0) 推荐(0)
摘要:题目: 思路: 有n长度的绳子,要用长度为a,b,c长度的小绳子拼 直接暴力枚举,在运用dp进行优化 代码实现: #include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;int 阅读全文
posted @ 2021-07-19 17:06 wateriness 阅读(41) 评论(0) 推荐(0)
摘要:题目 思路: 寻找区间 [a,b]中最小的区间长度 l ,使得在区间里有至少k个质数; 首先写一个质数表 然后运用二分查找不断缩小l,直到找的最接近的; 代码实现: #include<cstring>#include<stdio.h>#define maxn 1000000int prime[max 阅读全文
posted @ 2021-07-19 16:54 wateriness 阅读(40) 评论(0) 推荐(0)