hdu2020多校-1

J Math is Simple

给定 \(n\) ,求

\[\sum\limits_{1\le a<b\le n \\ gcd(a,b)=1 \\ a+b\ge n} \frac{1}{ab}
\]

的值,答案对 \(998244353\) 取模。

Solution

令 \(f_n = \sum\limits_{1\le a<b\le n \\ gcd(a,b)=1 \\ a+b\ge n} \frac{1}{ab}\), \(g_n = \sum\limits_{1\le a<b\le n \\ gcd(a,b)=1 \\ a+b= n} \frac{1}{ab}\)

显然有 \(g_n = \frac{1}{n} \sum_{d=1}^{n} \mu (d) \frac{1}{d} \sum_{t=1}^{\frac{n}{d}} \frac{1}{t}\)

再令 \(h_n = \sum_{i=1}^{n} \frac{1}{i}\) ,则有 \(g_n = \frac{1}{n} \sum_{d | n} \mu (d) \frac{1}{d} h(\frac{n}{d})\)

推导 \(f\) 和 \(g\) 的关系:

\[f_n = f_{n-1} + \sum\limits_{1\le a\le n \\ gcd(a,n) = 1}\frac{1}{an} - \sum\limits_{1\le a<b\le n \\ gcd(a,b)=1 \\ a+b=n-1} \frac{1}{ab}
\]
\[f_n = f_{n-1} + g_n - g_{n-1}
\]
\[f_n = ... = f_2 + g_n - g_2 = \frac{1}{2} + g_n
\]

hdu2018多校-5

H Hills And Valleys

给定一个长度为 \(n\) 的序列 \(a\) ,你需要翻转一段区间 \([l,r]\) 来最大化序列的最长不下降子序列。

求出最长不下降子序列长度以及翻转的区间。

数据范围: \(1\le n\le 10^5, 0\le a_i\le 9\)

Solution

枚举 \([x,y]\) 表示翻转区间内产生贡献的数的值域范围,设 \(b = \{ 0...x, y...x, y...9\}\) ,然后跑 \(a\) 和 \(b\) 的 \(LCS\) 即可,这里的 \(b\) 的数可多次被覆盖。

定义 \(dp[i][j]\) 表示 \(a\) 到 \(i\) , \(b\) 到 \(j\) 的 \(LCS\) ,显然有

\[dp[i][j] = max(dp[i - 1][j] + (a[i] == b[j]), dp[i][j - 1])
\]

枚举的过程中顺带维护 翻转区间的两端点 即可。

时间复杂度: \(O(45*12*n)\) ,跑不满。

hdu多校题解的更多相关文章

  1. 2018 HDU多校第四场赛后补题

    2018 HDU多校第四场赛后补题 自己学校出的毒瘤场..吃枣药丸 hdu中的题号是6332 - 6343. K. Expression in Memories 题意: 判断一个简化版的算术表达式是否 ...

  2. 2018 HDU多校第三场赛后补题

    2018 HDU多校第三场赛后补题 从易到难来写吧,其中题意有些直接摘了Claris的,数据范围是就不标了. 如果需要可以去hdu题库里找.题号是6319 - 6331. L. Visual Cube ...

  3. 2015 HDU 多校联赛 5363 Key Set

    2015 HDU 多校联赛 5363 Key Set 题目: http://acm.hdu.edu.cn/showproblem.php? pid=5363 依据前面给出的样例,得出求解公式 fn = ...

  4. 2015 HDU 多校联赛 5317 RGCDQ 筛法求解

    2015 HDU 多校联赛 5317 RGCDQ 筛法求解 题目  http://acm.hdu.edu.cn/showproblem.php? pid=5317 本题的数据量非常大,測试样例多.数据 ...

  5. [HDU多校]Ridiculous Netizens

    [HDU多校]Ridiculous Netizens 点分治 分成两个部分:对某一点P,连通块经过P或不经过P. 经过P采用树形依赖背包 不经过P的部分递归计算 树型依赖背包 v点必须由其父亲u点转移 ...

  6. HDU 6354 Everything Has Changed(余弦定理)多校题解

    题意:源点处有个圆,然后给你m个圆(保证互不相交.内含),如果源点圆和这些原相交了,就剪掉相交的部分,问你最后周长(最外面那部分的长度). 思路:分类讨论,只有内切和相交会变化周长,然后乱搞就行了.题 ...

  7. HDU 6351 Beautiful Now(DFS)多校题解

    思路:一开始对k没有理解好,题意说交换k次,如果我们不需要交换那么多,那么可以重复自己交换自己,那么k其实可以理解为最多交换k次.这道题dfs暴力就行,我们按照全排列最大最小去找每一位应该和后面哪一位 ...

  8. HDU 6342 Expression in Memories(模拟)多校题解

    题意:给你一个规则,问你写的对不对. 思路:规则大概概括为:不能出现前导零,符号两边必须是合法数字.我们先把所有问号改好,再去判断现在是否合法,这样判断比一边改一边判断容易想. 下面的讲解问号只改为+ ...

  9. HDU 6315 Naive Operations(线段树+区间维护)多校题解

    题意:a数组初始全为0,b数组题目给你,有两种操作: 思路:dls的思路很妙啊,我们可以将a初始化为b,加一操作改为减一,然后我们维护一个最小值,一旦最小值为0,说明至少有一个ai > bi,那 ...

随机推荐

  1. 软件构造实验-百度图像识别api

    识别结果: 识别结果:

  2. AS的不同布局

    AndroidStudio里面支持的布局有挺多种的,但是最最重要的是RelativeLayout(相对布局)和LinearLayout(线性布局),熟练掌握这两种布局也非常够用了,当然还有FrameL ...

  3. leetcode1753. 移除石子的最大得分

    题目描述: 你正在玩一个单人游戏,面前放置着大小分别为 a​​​​​​.b 和 c​​​​​​ 的 三堆 石子. 每回合你都要从两个 不同的非空堆 中取出一颗石子,并在得分上加 1 分.当存在 两个或 ...

  4. 【Android开发】分割字符串工具类

    public class TextUtils { public static String[] results; /** * 分隔符:"." * * @param resource ...

  5. FastAPI(六十九)实战开发《在线课程学习系统》接口开发--修改密码

    之前我们分享了FastAPI(六十八)实战开发<在线课程学习系统>接口开发--用户 个人信息接口开发.这次我们去分享实战开发<在线课程学习系统>接口开发--修改密码 我们梳理一 ...

  6. Ncrystal Skill设计

    在使用allegro时一般都会听说过skill,使用合适的Skill会使事情事半功倍.但是现阶段所能看到的个人白嫖的Skill都有一些通病.所以我才开发符合自己操作习惯的Skill. 当前我们所能找的 ...

  7. openfeign使用踩坑记录

    1.报ClassNotFound com.netflix.config.CachedDynamicIntProperty问题,原因是spring-cloud-starter-openfeign的spr ...

  8. 【二进制枚举】【CF Div2 C】

    2022.3.4  https://codeforces.com/contest/1646/problem/C 题意: 给一个数, 问可以最少有几个以下的数构成: 1.x! 2.2^x(x在每次都是任 ...

  9. 新手入门C语言第七章:C判断

    C 判断 判断结构要求程序员指定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件为假时要执行的语句(可选的). C 语言把任何非零和非空的值假定为 true,把零或 null  ...

  10. 计算属性、侦听属性、局部与全局组件使用、组件通信(父子互传)、ref属性、动态组件和keep-alive、插槽

    今日内容概要 计算属性 侦听属性 局部组件和全局组件 组件通信之父传子 组件通信之子传父 ref属性(组件间通信) 动态组件和keep-alive 插槽 内容详细 1.计算属性 # 插值的普通函数,只 ...