![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
2017年多校联合训练
文章平均质量分 58
_qyq
这个作者很懒,什么都没留下…
展开
-
2017年多校联合训练 第五场(吉如一)
官方题解1006 Rikka with Graph hdoj6090题目链接 贪心加边 m<=n-1时,边都从同一个点出发向不同的点连边,呈菊花状 中心点与其余有边的点的距离和:2*m 除中心点外有边的点间的距离和:m(m−1)2\frac {m(m-1)}{2}*2*2 (第一个乘2是因为每个点对间的距离为2,第二个乘2是因为每个点对要算两次) 对于没边的点,最少要连的边数为m+1条原创 2017-08-09 10:24:52 · 912 阅读 · 0 评论 -
hdoj6129 Just do it(三种方法加详解)
题目链接 方法一:正解,本质是dp,采用二进制优化,实现过程很巧妙(感谢Brassica) dp[i][j]表示第i次操作后第j项的取值,根据题意可得: dp[i][j]=dp[i][j−1]∧dp[i−1][j]=(dp[i][j−2]∧dp[i−1][j−1])∧(dp[i−1][j−1]∧dp[i−2][j])=dp[i][j−2]∧dp[i−2][j]//上式第二、三项相同则消去=..原创 2017-08-16 12:02:09 · 540 阅读 · 0 评论 -
2017年多校联合训练 第一场(北航)
Link 官方题解1001 Add More Zero 题目链接 hdoj6033 2^n在减了1之后位数是不会改变的#include<bits/stdc++.h>using namespace std;int main(){ int t=0,n; while(~scanf("%d",&n)) printf("Case #%d: %d\n",++t,int(log10(2原创 2017-07-27 10:20:10 · 999 阅读 · 0 评论 -
2017年多校联合训练 第三场(洪华敦)
Link 官方题解1003 Kanade’s sum hdoj6058题目链接 暴力可过#include<bits/stdc++.h>using namespace std;#define N 500005int t,n,k,i,j,a[N],b[N],c[N],p,q;long long s;int main(){ scanf("%d",&t); while(t-原创 2017-08-01 21:15:41 · 1302 阅读 · 0 评论 -
2017年多校联合训练 第七场(杭二中)
官方题解1005 Euler theorem hdoj6124题目链接 //比赛的时候一看过得这么多,不思考了,打表过233 b的取值为[0,a/2)U{a}#include<bits/stdc++.h>using namespace std;int main(){ int t,a; scanf("%d",&t); while(t--) scanf("%d",&a原创 2017-08-15 19:40:16 · 392 阅读 · 2 评论 -
2017年多校联合训练 第六场(福州大学)
官方题解 1002 Mindis hdoj6097题目链接 几何方法: 将点P关于圆O的反演点记作P’,由定义得OP*OP’=R2R^2,则△ODP~△ODP’,相似比为OP:R,点Q同理 当反演点的连线与圆有交点时,min(DP+DQ)转化为min(DP’+DQ’)*相似比 否则D即为△OPQ中从点O出发的角平分线(等腰三角形三线合一)与圆的交点,计算DP+DQ 代码种用复数形式记录原创 2017-08-14 19:43:46 · 545 阅读 · 0 评论