2019中山大学程序设计竞赛 Triangle】的更多相关文章

今天水了一发hdu上的中山校赛 这个题交了将近十遍才过...... 就是说给 n 个木棍,如果能找出3个能组成三角形的木棍就输出yes 反之输出no 乍一看很简单 一个排序遍历一遍就好了 但是n值太大了,我试了一下,就算不加sort都会TLE...... 问了一下大神才想出这个关键的条件: 假设 a1=1,a2=2,a3=3 那么这是最小的三个不能组成三角形的木棍, 所以如果n=4,那么a4最小是a2+a3=5 n=5,a5最小是8 ................ 当n=47时,a47=480…
题目地址 题目大意:给你一个n*m的矩形,在这个矩形内告诉你p个矩形(左下角和右上角坐标),问你q个问题,每次也是给你一个矩形(左下角和右上角坐标),问你每个矩形是否可以被开始给的p个矩形完全覆盖. 思路:n*m范围是1e7,无法开二维数组,二维坐标可以转化为(n-1)*m+m,用一维数组来记录每个坐标的前缀和(即为这个点与0,0点组成矩形的面积),先通过二维差分,将前缀和记录一边.因为有覆盖的情况,所以将前缀和大于0的初始化为1,在来一遍前缀和,处理好之后就可以O(1)的时间算出每个矩形是否可…
Problem Description Keke is currently studying engineering drawing courses, and the teacher has taught her how to find its volume through the three views of the part. But her brain doesn't work well that she can't find the volume of complex parts. So…
这道题最后没过,估计是痛失省一了,现在来补一下,当时思路是对的应该是代码出了问题导致样例没过最后nc的除了2,一直WA 题意: 给一张联通图,有两个导航系统,其中一个系统认为第i条边的权值是Pi,另一个系统认为是Qi(给定Pi和Qi),然后每个导航系统对于每条边i有个判定 其中一个是hero(vi)+Pi>hero(ui)会报警一次,另一个系统是a(vi)+Qi>a(ui)会报警一次,ui是边i的一个结点vi是另一个结点,让求一条两个系统警告次数相加最少的一条路径. 思路: 先从终点n作为起点…
这题和今年南昌邀请网络预选赛M题很像啊,不过主串数量不是一个了 都是在主串中判断子串是不是属于主串的一个子序列 #include <iostream> #include <cstring> #include <cstdio> using namespace std; + ; + ; char s1[maxn], s2[maxm]; ], last[], ans[maxn]; int n, m; int main(){ // freopen("in.txt&qu…
链接:https://ac.nowcoder.com/acm/contest/992/D $a_{i}=\dfrac {3a_{i-1}-a_{i-2}}{2}+i+1$ 移项再化一下 $a_{i}-a_{i-1}-2i=\dfrac {1}{2}\left[ a_{i-1}-a_{i-2}-2\left( i-1\right) \right]$ 令$t_{i}=t_{i}=a_{i}-a_{i-1}-2i$ 由于$a_{0}=0$ $a_{1}=2$ 所以$t_{1}=0$ 所以$t_{i}=…
题目链接:https://ac.nowcoder.com/acm/contest/992/A 题意:求出长度为n的字符串个数,字符串由A.C.G.T组成,其中A和C必须成对出现. 思路:我们规定:   f[n][0]--长度为n的合法字符串个数 f[n][1]--长度为n的A为奇数个的字符串个数 f[n][2]--长度为n的C为奇数个的字符串个数 f[n][3]--长度为n的A.C均为奇数个的字符串个数 那么有如下转移方程: 根据转移方程构建矩阵: 就可以通过矩阵快速幂求得了,n太大了,继续思考…
题目链接:https://ac.nowcoder.com/acm/contest/992/K 题意:给一个大小为1e5的数组,由0 1组成,有两种操作,包括区间修改,将一段区间内的0换成1,1换成0; 区间查询,查询区间内连续1的数量. 思路:区间查询和区间修改,明显可以用线段树来做,我们先分析下复杂度,每次操作复杂度为logn,有m次操作(m<=1e5+1),那么总复杂度为mlogn,是可行的. 我们用线段树维护什么呢,因为要求区间最多连续1的个数.那么需要维护区间前缀连续0/1的个数fr[0…
题目链接:https://ac.nowcoder.com/acm/contest/992/J 题意:题意很清晰,就是求任意两点距离的和,结果对1e9+7取模. 思路:裸的树形DP题,一条边的贡献值=这条边的权值×左端连接的顶点数×右端连接的顶点数,所以我们dfs算出点y的子树大小siz[y],x为y的父结点,则x与y连线这条边的一端点的个数为siz[y],另一端点的个数为n-siz[y] ,贡献值即为dis[x,y]*siz[y]*(n-siz[y]),注意取模. AC代码: #include<…
题目链接:https://ac.nowcoder.com/acm/contest/992/F 题意:给定正n边形,边长为100,以每条边的中点连线构成新的正n边形,无限循环下去,求所有边的长度和. 思路:简单数学计算题,可以发现每往下进行一层,边长减小cos(PI/n)倍,在n趋于无穷求等比数列和即可. AC代码: #include<cstdio> #include<cmath> using namespace std; ); int n; int main(){ while(~s…