- 博客(42)
- 收藏
- 关注
原创 Python 学习总结(三)——列表
序列型数据有序的序列:字符产、列表、元组有序列表的通用操作:索引、分片、加、乘检查是否属于序列长度、最大、最小
2019-11-23 16:57:30
256
原创 埃及分数 (迭代加深入门)
Description: 在古埃及,人们使用单位分数的和(形如1/a的, a是自然数)表示一切有理数。如:2/3=1/2+1/6,但不允许2/3=1/3+1/3,因为加数中有相同的。对于一个分数a/b,表示方法有很多种,但是哪种最好呢?首先,加数少的比加数多的好,其次,加数个数相同的,最小的分数越大越好。 如:19/45=1/3 + 1/12 + 1/180 19/45=1/3 + 1/15
2017-11-10 08:26:52
3094
原创 BZOJ 2143 飞飞侠 (最短路变形)
Description: 飞飞国是一个传说中的国度,国家的居民叫做飞飞侠。飞飞国是一个N×M的矩形方阵,每个格子代表一个街区。然而飞飞国是没有交通工具的。飞飞侠完全靠地面的弹射装置来移动。每个街区都装有弹射装置。使用弹射装置是需要支付一定费用的。而且每个弹射装置都有自己的弹射能力。我们设第i行第j列的弹射装置有Aij的费用和Bij的弹射能力。并规定有相邻边的格子间距离是1。那么,任何飞飞侠都只需
2017-11-01 08:36:03
910
原创 NOIP2017赛前模拟 纸袋(并查集)
题目描述: 给一个无限长的纸袋,上面被划分了许多个格子,现在进行N次操作,第ii次操作是将[ LiL_i , RiR_i ](注意这里的L,R是格子的左右端点,不是格子的编号),改为数字 i ,询问最后可以看到多少种数字。题解: 显然我们应该倒着染色,我们可以维护一个 r[ i ]数组,表示 第 i 个格子,右边第一个没有被染过色的格子是那一个,凯爷说可以用并查集将同种颜色(数字)的格子连在
2017-10-31 18:21:08
393
原创 NOIP2017赛前模拟(2017.10.31)考试总结
得分:100+0+0 T1:NOIP2014 Day2 T1加强版,矩阵前缀和,稳如狗; T2:暴力建边,结果建的双向边(沉浸在T3调出来的喜悦中),题解用了一种巧妙的方式,减少了边数,涨姿势。题解 T3:两个失误: 1、题目描述的左右端点,我以为是格子的编号,l 没有+1; 2、对于大数据,没有处理经验,没有想到离散化。 综上,正解变0分。题解后记: 1.不要以为对拍没错就好了
2017-10-31 18:02:23
295
原创 NOIP2017赛前模拟 STAR (合理证明复杂度)
题目描述: 给定一个无重边和自环的无向图,求有多少个如下图的鳕鱼图(四个点五条边—只看黑色的边): 输入格式: 第一行一个整数T,表示有T组数据。 每组数据,第一行两个整数N,M,表示N个点,M条边。 接下来M行,每行两个整数U,V,表示U,V之间有一条无向边。 输出格式: 每组数据输出一个整数表示鳕鱼的个数(如果组成鳕鱼的边集不同,视为不同)数据范围: 2题解:
2017-10-30 22:03:17
389
原创 NOIP2017赛前模拟 Game DP (2017.10.30)
题目描述: 给你N个数,每个数的大小为aia_i,小A和小B从前往后轮流选数,小A先手,第一次可以选1或2个数。后面,如果前一个人选了K个数,后一个人只能选K或K+1个数; 小A和小B都是绝顶聪明,输出在双方都采取最优策略时,小A选的数的总和能比小B多多少。 数据范围: 1<=N<=20000; 样例: 输入 3 1 3 2 输出: 4输入 10 1 2 3 4 5 6
2017-10-30 21:03:37
384
原创 NOIP2017 赛前模拟(2017.10.30)考试总结
今天天气真好,果然适合爆炸,得分:100+0+0 T1:稳如狗,一道很简单的结论题,其实一开始我是看错结论了,后来凯爷从新解释了一遍题意,我又走回了正轨。对于这种T1的简单结论题,以后一定要先把题意理解清楚,举一些小样例验证了,再打。 T2:一道几乎做过的原题分玩具,被凯爷批,没有好好改题,不过我之前好像并没有真正理解到dp的含义,即当前状态下的最优解,我以前好像以为dp就是当前状态下的一种
2017-10-30 20:32:25
345
原创 股票交易 【SCOI 2010】HDU 3401 (单调队列优化DP入门)
题目描述: 最近 Lxhgww 又迷上了投资股票,通过一段时间的观察和学习,他总结出了股票行情的一些规律。 通过一段时间的观察,Lxhgww 预测到了未来 T 天内某只股票的走势,第 i 天的股票买入价为每股 APiAP_i,第 i 天的股票卖出价为每股 BPiBP_i数据保证对于每个i,都有APiAP_i≥BPiBP_i),但是每天不能无限制地交易,于是股票交易所规定第 i 天的一次买入至多
2017-10-25 16:58:17
424
原创 道路覆盖 (二分答案+状压DP)
Description: Tar 把一段凹凸不平的路分成了高度不同的 N 段(每一段相同高度),并用 H[i] 表示第 i 段高度。现在 Tar 一共有 n 种泥土可用,它们都能覆盖给定的连续的 k 个部分。 对于第 i 种泥土,它的价格为 C[i],可以使得区间 [i,min(n,i+k-1)] 的路段的高度增加 E[i]。 Tar 要设定一种泥土使用计划,使得使用若干泥土后,这条路最低的
2017-10-25 16:24:58
499
原创 NOIP2017赛前模拟 Graph (2017.10.24)
题意: 给定一个无向图,求最少加多少条边,使得整个图任意两点之间都存在两条及以上的路径。题解: 作为考试的第一题,据凯爷说,是一道板子题,好像也确实是这样。 首先可以发现,一个边双连通分量中题意肯定成立,所以我们先把一个边双缩成一个点; 然后整张图变成了一棵树,这时候,只要花几个图,就可发现答案为:ans=(度数为1的点的数量+1)/2 ; 如果是在树上找叶子节点,还要判断一下根
2017-10-25 16:10:43
456
原创 Permutation HUD-3811 (状态压缩)
Description: In combinatorics a permutation of a set S with N elements is a listing of the elements of S in some order (each element occurring exactly once). There are N! permutations of a set which
2017-10-25 12:35:54
305
原创 NOIP2017 赛前总结
1、读入剪枝; 2、检查数组范围大小是否合适; 3、运算符的优先级问题,特别是有位运算时,打错了都不好找问题,最好每个都打上括号; 4、判断奇偶 (x&1) 和 (x%2)在正数时相同,但负数时 (x%2)在奇数就会得到-1,是错的; 5、并查集一定要赋初值,特别是多组数据,不要忘了 6、给点图上最短路可以考虑不建边的最短路(每次一步一步走)
2017-10-23 21:37:13
466
原创 BZOJ 1179 ATM (强连通分量缩点+spfa最长路)
Description: Input: 第一行包含两个整数N、M。N表示路口的个数,M表示道路条数。接下来M行,每行两个整数,这两个整数都在1到N之间,第i+1行的两个整数表示第i条道路的起点和终点的路口编号。接下来N行,每行一个整数,按顺序表示每个路口处的ATM机中的钱数。接下来一行包含两个整数S、P,S表示市中心的编号,也就是出发的路口。P表示酒吧数目。接下来的一行中有P个整数,表示P个
2017-10-23 21:31:41
559
原创 NOIP2017赛前模拟(2017.10.23)
得分:5+0+0 考试总结:一个AK场被我活生生考成了。。。。我果然是一个蒟蒻。T1送分,结果样例看错,导致自己一开始理解对了后来打错了;T2一道简单的图论题,结果自己一种情况讨论错了,全错,还有cout的锅;T3一道贪心,结果没有仔细考虑。 本次考试告诉我,对于每一道题首先要把题目和样例看仔细,不要最后才发现题看错了,然后对于有把握的题,一定要仔细验证,对拍,最后对于稍稍有些难度的题,可以多
2017-10-23 16:04:41
486
原创 NOIP2017赛前模拟 Table(双向链表)
题意: 给一个N*M的矩阵,每次交换两个形状完全相同的且互不重叠而且没有公共边界的子矩阵,输出最后结果。 题解: 给每个点挂一个链表记录它右边和下面的点 %%%凯爷 链表大佬#include<bits/stdc++.h>using namespace std;const int N = 1005;const int MaxN = 1005003;int n,m,q,num,v[
2017-10-20 21:28:09
469
原创 NOIP2017赛前模拟(2017.10.20)
得分 30+30+60 T1:类似于hdu”重温世界杯“,因为题目中 A之和=B之和,所以保证可以选完,考试的时候想到了这点,但是判断是智障了,以后还是心态要好一点,不要着急,一步一步来 T2:DP,考试的时候完全没有思路,所以打完暴力就走,还算可以;这道题 T3:暴力出奇迹,考试时由于时间不多,还是暴力,只是今天学习了一波常数优化
2017-10-20 21:21:15
307
原创 NOIP2017赛前模拟(2017.10.20)Matrix (类似轮廓线DP)
题意: 给一个N行M列的矩阵,挑出K个互不重叠的子矩阵,得分为这些子矩阵中的数值和,求这个数值的最大值。 题解: 因为数据范围为:1<=N<=100,1<=M<=2,1<=K<=10,|数值|<=1000000; 虽然有(n3n^3k)比较明显的DP,还是有(nk)的DP,类似于轮廓线DP;因为M<=2,所以我们每次DP是一共有五种状态: 0—当前这一行不选; 1—当前这一行选
2017-10-20 21:11:31
336
原创 NOIP 2015 Day2 T3 运输计划(二分+dfs序+树上差分+倍增LCA)
题目大意:给你一棵n个点的边带权树,再给树上m条路径,让你将一条边权改为0,是的路径的最大值最小 题解:
2017-10-20 08:01:49
259
原创 NOIP2017赛前模拟(2017.10.19)
得分30(正解写炸)+30(暴力很稳)+50(玄学) 本次考试三道题感觉都不是按照正常NOIP题出的,个人感觉三道题难度差距并没有太大,还好今天除了T1都还比较稳。 T1:就是一个贪心,当到第三张牌及其以后的时候每次判一下是对子,还是与前面的两张组成顺子更优,而且每次留一张牌,是的后面的选择具有更多的可能性。当然你也可以DP,其实思想是一样的。 T2:一道结论题,大佬们都说和今年的初赛题
2017-10-19 20:04:33
402
原创 HUD 4745 Two Rabbits (区间DP)
Description: Long long ago, there lived two rabbits Tom and Jerry in the forest. On a sunny afternoon, they planned to play a game with some stones. There were n stones on the ground and they were ar
2017-10-18 09:22:58
293
原创 NOIP2017赛前模拟 (2017.10.17)考试总结
得分:100+0+0 本次考试相较于昨天的三道题; T1 没有什么变化,稍加分析就可以看出是差分,但是根据这么久的做题,对于差分主要是有两点需要注意(树上差分单独): 1、差分的边界一定要注意,到底有没有0,最后是n+1还是n(今天一位因为没有从0开始差分,被wuvin卡成0分); 2、注意加的区间,是两边都闭还是左闭右开,一定要注意。 T2 难度有所增加,这道题教会了我,考试的时候
2017-10-17 20:01:22
326
原创 NOIP2017赛前模拟 字符串(AC自动机)
题意: 给你n个单词(字符串T)和一个文章(字符串S),q个询问,每次修改S中的一个字符,然后输出所有单词在文章中的出现次数。一开始输出没有修改时的答案。题解: 先将每个单词建一个AC自动机,在没有修改时统计一个答案; 然后我们发现,每次修改只会影响[pos-mx+1,pos+mx-1] (mx为最长的单词的长度,pos为当前修改的位置)的答案,其余多出的则不会影响; 所以每次修改时
2017-10-16 18:10:27
333
原创 NOIP2017模拟 拆墙 (最大生成树)
题目描述 地主的傻儿子豆豆家很大很大,由很多个区域组成。其中有不少封闭的区域,豆豆觉得很不爽于是决定拆墙,把家打通使得他可以访问到每一个区域(包括家外面无限大的区域)。我们用 N 个端点和 M 条边来描述豆豆的家。第 i 个端点的坐标为(xi,yi),第 i 条边连接端点 Ai 和 Bi,拆除所需要花费的力气为 Ci 。保证所有边只在端点相交,也就是这是一个平面图,也没有重边和自环。现在豆豆想知道
2017-10-13 17:16:31
544
原创 POJ 3310 Caterpillar
Description: An undirected graph is called a caterpillar if it is connected, has no cycles, and there is a path in the graph where every node is either on this path or a neighbor of a node on the path.
2017-10-12 15:07:44
383
原创 NOIP2017赛前模拟 分玩具
Description: 豆豆和豆沙正在分一些玩具,每个玩具有一个好玩值,每个人可以拿走任意数量的玩具,获得的愉快度为最小的好玩值。现在豆豆先拿,每个人轮流操作,直到没有玩具可以拿。豆豆想知道他能比豆沙多出多少愉快度?Input: 第一行 N 表示玩具个数。 接下来一行 N 个整数表示第 i 个玩具的好玩值。Output: 输出一个整数表示最多多出的愉快度。Sample Input: 3
2017-10-11 16:49:47
385
原创 HDU 1421 搬寝室
Description: 搬寝室是很累的,xhd深有体会.时间追述2006年7月9号,那天xhd迫于无奈要从27号楼搬到3号楼,因为10号要封楼了.看着寝室里的n件物品,xhd开始发呆,因为n是一个小于2000的整数,实在是太多了,于是xhd决定随便搬2*k件过去就行了.但还是会很累,因为2*k也不小是一个不大于n的整数.幸运的是xhd根据多年的搬东西的经验发现每搬一次的疲劳度是和左右手的物品的重
2017-10-09 22:03:46
373
原创 NOIP2017 赛前模拟(2017.10.6)
T1 : 题目描述: 给出 n 个数。请找出一个排列使得相邻两个数的差的绝对值的和最大。请求出这个最大值。 题解: 通过样例数据我们可以发现: n为偶数时,只存在一种情况 ,对于一个数列 1 4 2 3 ,ans=-1+4+4-2-2+3 n为奇数时,存在两种情况,分别是将最大的数放在中间,将最小的数放在中间;
2017-10-06 16:58:54
409
原创 HDU 4902 NICE BOAT (线段树+懒标记)
Problem Description There is an old country and the king fell in love with a devil. The devil always asks the king to do some crazy things. Although the king used to be wise and beloved by his people
2017-08-18 10:46:10
359
原创 Alice 与 Bob 的游戏 (概率DP)
题目描述 Alice 和 Bob 两个人正在玩一个游戏,游戏有很多种任务,难度为 p 的任务(p是正整数),有 1/(2^p) 的概率完成并得到 2^(p-1) 分,如果完成不了,得 0 分。一开始每人都是 0 分,从 Alice 开始轮流做任务,她可以选择任意一个任务来做;而 Bob 只会做难度为 1 的任务。只要其中有一个人达到 n 分,即算作那个人胜利。求 Alice 采取最优策略的情况下获
2017-08-16 11:23:37
2505
原创 倍增法求 LCA
倍增算法可以在线求树上两个点的LCA,时间复杂度为nlogn预处理:通过dfs遍历,记录每个节点到根节点的距离dist[u],深度d[u] 并求出树上每个节点i的2^j祖先f[i][j]求最近公共祖先,根据两个节点的的深度,如不同,向上调整深度大的节点,使得两个节点在同一层上,如果正好是祖先结束,否则,将连个节点同时上移,查询最近公共祖先。#include <cstdio>#include <c
2017-07-25 11:41:26
533
原创 NOIP2017 赛前模拟 7.24
本次考试三道题据出题人的意思都是模板题,T1单调队列模板,T2数位DP模板,T3线段树模板,但由于前两个模板都不熟悉,考试的时候不敢写,线段树也写炸了,最后只有50分。T1: 题目描述: 在一个包含 n 个元素的数组上,有一个长度为 k 的窗户在从左向右滑动。窗户每滑动到一个位置,我们都可以看到 k 个元素在窗户中。如下的例子所示,假设数组为 [1 3 -1 -3 5 3 6 7],而 k
2017-07-25 10:28:38
358
原创 NOIP2017 7.17模拟 Minimum (最短路+最小生成树)
题目描述: 给出一幅由 n 个点 m 条边构成的无向带权图。 其中有些点是黑点,另外点是白点。 现在每个白点都要与他距离最近的黑点通过最短路连接(如果有很多个,连所有的),我们想要使得花费的代价最小。请问这个最小代价是多少? 注意:最后选出的边保证每个白点到黑点的距离任然是最短距离。(这句话题解代码也无法实现,就不管了)输入: 第一行两个整数 n,m ; 第二行 n 个整数,0 表示白点
2017-07-18 08:41:24
742
原创 2017.7.13 NOIP2017赛前模拟考试总结
本次考试三道题是以前做过的模板题,难度均不大,T1主要是注意数组开long long ,T2则是一道裸的LCA,再次就不赘述,主要说说T3 给定 n 个数,求最大的数 m ,使得 m 是 n 个数中至少一半的数的约数。 注意:m 不一定在 n 个数中,只要满足要求即可。 数据范围: 对 40% 的输入数据 : n≤100 对 100% 的输入数据 :n≤100000;1≤
2017-07-14 10:17:36
646
原创 一些解题过程中关于数据范围的细节
1.spfa等求最短路时,与边有关数组开的范围应该为题设的两到三倍,因为建图时是建的双向边 2.最小生成树等若给的是矩阵表示两两之间的距离,一般可以开n*n(n为点的个数) 输入文件第一行为整数 n(2<=n<=100),表示计算机的数目。此后的 n 行,每行 n 个整数。第 x+1 行 y 列的整数表示直接连接第 x 台计算机和第 y 台计算机的费用。 3 0 1 2
2017-07-04 16:01:04
282
原创 树状数组求逆序对
一般来说,求逆序对,方法如下: 1、如果 N<10000,可以用冒泡排序,交换次数就是逆序对数量,时间复杂度 O(n2),空间复杂度 O(n) 2、如果 N>=10000,用归并排序,是分治思想,时间复杂度 O(nlog2n),空间复杂度 O(2*n),见上面参考代码。 3、如果 K 表示最大元素和最小元素的差值,当 N 大于400000,K=50000 的时候,树状数组比分治更快,时间复杂度
2017-04-28 20:19:08
884
原创 2017.4.22NOIP2017模拟考试总结
本次的三道题难度偏低,第一题是一个非常裸的二分答案,第二题就是排一个序,然后相乘,主要是用到了二进制乘法,第三题就是一道裸地差分约束,没有什么问题。结果考试只有第三题A了,第一题和第二题都WA了,归根到底还是自己对于基础的模板不熟练,如二分答案的判断等。T1:二分答案加模拟判断 题意:一共有n堆果子,m个袋子,每堆果子有一个体积,求最小的袋子体积v可装完所有果子,注意袋子可以不
2017-04-22 16:35:57
455
原创 2017.4.15考试总结
本次考试的三道题总体难度并不是太高,不及NOIP的难度,但是结果成绩爆0,还是因为自己的基础内容不扎实(高精度),一些类型的题不熟练(超简单的树形DP),还有考场上没有合理分配时间,静下心去分析一道题,只是粗略的一看,感觉比较难就放弃了。 第一题:求a^b-b^a的值(0<=a,b<=100) 这道题一看数据范围肯定是高精度,如果数据再大一点,就要用到快速幂。据一位张姓学霸讲,用FFT+快速幂可
2017-04-15 16:30:50
373
原创 2017.3.11 NOIP2017赛前模拟考试总结
这次考试三道题 ,T1比较简单,T2的80分的部分分还是比较好拿,T3的30分部分分较为容易,结果考炸,归根到底还是自己的代码能力较弱,第一题都写炸了,第二题的结论推了一半,第三题的BFS水。T1 染色问题 题意:给定一个方阵,不断改变一列或一行的颜色,输出最后的结果。 正解:记录每次操作的时间,最后输出时只输出时间在后的结果。#include#include#inclu
2017-03-16 10:15:13
502
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人