摘要: 题意:如图,按照图中的规律给这些格子编号。给出两个格子的编号,求从一个格子到另一个格子的最少步数。(一步只能穿过有有公共边的格子)分析:根据高中数学知识,选任意两个不共线的向量,就能表示平面上所有点。像这样建立坐标系,根据图中的规律算出所有点的坐标。推理也好,找找规律也好,不难发现第一、三象限的点(... 阅读全文
posted @ 2015-01-04 23:39 AOQNRMGYXLMV 阅读(881) 评论(0) 推荐(0)
摘要: 题意:平面上有n个点,现在要把它们全部连通起来。现在有q个套餐,如果购买了第i个套餐,则这个套餐中的点全部连通起来。也可以自己单独地建一条边,费用为两点欧几里得距离的平方。求使所有点连通的最小费用。分析:很明显,如果没有这些套餐的话,就是一个裸的MST。可以枚举套餐的组合情况,然后把套餐中的边的权值... 阅读全文
posted @ 2015-01-04 19:17 AOQNRMGYXLMV 阅读(305) 评论(1) 推荐(0)
摘要: 题意:规定一棵生成树的苗条度为:最大权值与最小权值之差。给出一个n个顶点m条边的图,求苗条度最小的生成树。分析:按照边的权值排序,枚举边集的连续区间[L, R]的左边界L,如果这些区间刚好满足一个生成树,则存在一个苗条度不超过W[R] - W[L]的生成树。话说,代码中用了STL的vector,慢了... 阅读全文
posted @ 2015-01-04 12:33 AOQNRMGYXLMV 阅读(313) 评论(0) 推荐(0)
摘要: 题意:45块石头如图排列,每块石头上的数等于下面支撑它的两数之和,求其余未表示的数。分析:首先来计算最下面一行的数,A71 = A81 + A82 = A91 + 2A92 + A93,变形得到A92 =(A71 - A91 - A93) / 2.以此类推,就能得到最下面一整行的数。有了这个“地基”... 阅读全文
posted @ 2015-01-04 10:35 AOQNRMGYXLMV 阅读(495) 评论(0) 推荐(0)
摘要: 题意:给出一个数列,求一个连续的子序列,使得MGCD(i, j) = 该子序列的长度(j-i+1) × 子序列的gcd 最大,并输出这个最大值。分析:感觉可能要用优先队列,但貌似也用不上。但类似地,从左往右枚举右端点,不难发现随着序列长度的增大,其子序列的最大公约数是非递增的。一般情况下,是呈阶梯状... 阅读全文
posted @ 2015-01-04 00:36 AOQNRMGYXLMV 阅读(354) 评论(0) 推荐(0)