![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
比赛----2018暑假hdu多校
文章平均质量分 66
anthony1314
退役acmer 想要找到后端实习的菜鸡
展开
-
2018 Multi-University Training Contest 2-----hdu6313Hack It【构造题】
Hack ItTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 668Accepted Submission(s): 216Special JudgeProblem Description...原创 2018-07-26 13:55:11 · 242 阅读 · 2 评论 -
hdu6418 Rikka with Stone-Paper-Scissors 2018杭电多校第九场D题 【推公式(奇妙对称性)】
题目链接:传送门题意:Rikka 和 Yuta有剪刀石头布三种卡片,他们两个卡片的数量相同, 只是每个种类的卡片可能不同.现在给你 a b c 代表Rikka的剪刀 石头 布三个种类卡片的数量而aa bb cc 则代表Yut卡片的数量每个回合双方各出一张牌,出完这张牌后舍弃掉,赢的人得加一分,输的人减一分,平局不增不减。Yuta随机出牌求Rikka的最大预期得分。...原创 2018-08-21 13:04:31 · 270 阅读 · 0 评论 -
hdu6415 Rikka with Nash Equilibrium 2018杭电多校第9场A题【DP】
题目链接:传送门题意:给你一个n*m矩阵,以及一个mod;给你一种定义,在矩阵内的某个元素Aij(第i行第j列)在所在的行和列任意一个元素大,为一个平衡。在这个n*m矩阵中有1~n*m,每个数出现次数为1, 请问有多少种方案构成这个矩阵,答案模mod,且这个矩阵的平衡只有一个。题解:想了这道题想了很久,赛后看到多校群里的神仙们用oeis推出了公式,真的nb,公式为n!*m!*(n*...原创 2018-08-21 11:26:54 · 195 阅读 · 0 评论 -
hdu6386 Age of Moyu 2018杭电多校第七场A题【优先队列+BFS】(已更改)
题目链接题意:给你n个点, m条边(双向), 每条边有一个编号,求从1到n的最短路。如果没有则输出-1.规则:经过一条边,花费为1,若经过的下一条边与当前的边编号相同,则下一条边不需要花费, 如果不同则代价+1.简单来说就是 求 换乘次数+1例1:1-2 的编号 为11-3 的编号为22-3 的编号为1则最短路 可以是 1-2-3 这里的编号都为1 所以答...原创 2018-08-18 23:30:00 · 491 阅读 · 5 评论 -
hdu6351 Beautiful Now 全排列+剪枝(暴力) 2018杭电第五场B题
题意:给你一个不超过10^9的数n,和一个k;有一种操作方式交换这个数的某一位与另一位进行交换 比如 201 可以换成 102,让你进行k次操作,求出交换后最大的数字和最小的数字.要点:1 . 某一位的数字可以和它本身进行交换 2 .交换的数字不可以有前导零(即第一位不可以是0)题解:如果这个数字是n位数,那么其交换不超过n-1次就可以变成最大值和最小值,可以根...原创 2018-08-07 14:05:47 · 658 阅读 · 0 评论 -
hdu6333 Problem B. Harvest of Apples 莫队算法+费马小定理求逆元
S(n,m - 1) = S(n,m) - C(n,m)S(n,m + 1) = S(n,m) + C(n,m + 1)S(n - 1,m) = (S(n,m) + C(n - 1,m)) / 2S(n + 1,m) = 2 * S(n,m) - C(n,m)推出四道公式,用莫队算法做,求组合数用费马小定理求逆元。#include<bits/stdc++.h>#...原创 2018-08-02 16:56:35 · 126 阅读 · 0 评论 -
hdu6396Swordsman 2018杭电多校第七场1011 【优先队列+IO输入优化】
题目链接题意:有一个法师 法师身上有k个属性 Vi, 1<=k<=5 有m只怪物, 每只怪物有k个属性 Aij, 当法师杀死某只怪物的时候, 每一项属性 Vi 可以根据 提高相应的值Bijm<= 5*1e5求法师最多可以杀死几只怪物 以及其最终属性是多少题解:由于k的值很小,所以我们可以开k个优先队列,每个队列的优先级是从小到大,先将所有怪物...原创 2018-08-14 15:48:47 · 156 阅读 · 0 评论 -
hdu6395 Sequence 2018杭电多校第7场1010 【矩阵快速幂+分块】
题目链接题意:给你A, B, C, D, p, n这些条件通过公式请你推出第n项答案(mod1e9+7)题解: 有前面几项推出后一项的公式一般都是用矩阵快速幂来求, 主要是p/n难以进行操作,那么我们便根据p/n的值来进行分块例如 p = 16 n = 55分块可分为 :p/3 = 5 3p/4 = 4 4p/5 = 3...原创 2018-08-14 11:27:37 · 199 阅读 · 0 评论 -
hdu6319---2018 Multi-University Training Contest 3 ---Problem A. Ascending Rating【单调队列】
题意:给定一个序列a[1.....n],对于每个长度为m的子区间,求出区间a的最大值以及从左往右扫描该区间时a的最大值变化次数。思路:按照平从m到n的顺序用个单调队列就可以算出子区间的最大值,但是按照r从m到n的顺序很难求出变化次数,不如我们反着顺序过来求,按照递增,来写单调队列,队列中元素的个数就是最大值的变化次数。队列中存的元素是以数组下标来进行存的。#inc...原创 2018-07-31 15:17:54 · 116 阅读 · 0 评论 -
2018 Multi-University Training Contest 1 ------ 1004 hdu6301 Distinct Values【贪心+优先队列】
题意:给出一个数组大小,这个数组里面所有的数范围从 1到100000,这个数组有这样一个规则,某个子区间内的所有数必须不相同,求按字典序最小输出这个数组。解法:贪心+优先队列先把所有区间按前端进行排序,再按后端进行排序,进行遍历,每次把前面区间用过的数字但现在遍历的区间没覆盖的数存进优先队列中,然后再取出来用。本人AC代码:#include<bits/stdc++....原创 2018-07-24 13:21:42 · 175 阅读 · 0 评论 -
2018 Multi-University Training Contest 1 ------ 1002 hdu6299 Balanced Sequence【贪心】
Balanced SequenceTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2802Accepted Submission(s): 700Problem DescriptionChiaki hasnstrin...原创 2018-07-24 17:11:35 · 123 阅读 · 0 评论 -
2018 Multi-University Training Contest 2 ---------hdu 6315 Naive Operations【线段树】
Naive OperationsTime Limit: 6000/3000 MS (Java/Others)Memory Limit: 502768/502768 K (Java/Others)Total Submission(s): 853Accepted Submission(s): 318Problem DescriptionIn a galaxy far, f...原创 2018-07-26 11:47:51 · 173 阅读 · 0 评论 -
2018 Multi-University Training Contest 2 ---- hdu6318 Swaps and Inversions【离散化+归并排序】
Swaps and InversionsTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1070 Accepted Submission(s): 401Problem DescriptionLong long ago, ...原创 2018-07-26 16:10:59 · 136 阅读 · 0 评论 -
hdu6424 Rikka with Time Complexity 2018杭电多校第九场 J题 复杂度【对数公式推规律】
题目链接:传送门题意就不说了,直接说怎么推的直接在 求的结果前面+2个log 取对数loglog(f(a)^f(b)^f(c)) = (log(f(b)^f(c))*log(f(a)) = log(f(b)^f(c)) + loglog(f(a)) = f(c)log(f(b)) + loglog(f(a)) = f(c)f(b+1) + f(a+2)f(+无穷大)...原创 2018-08-21 17:24:02 · 224 阅读 · 0 评论