首页 > 其他分享 >08-04 题解

08-04 题解

时间:2024-08-06 14:51:10浏览次数:9  
标签:gcd 04 dep 题解 08 add lcm

08-03 题解

A

根据题目的提示, 发现所有数的积是不变的 (\(gcd(a, b) * lcm(a, b) = a * b\)), 所以差大和大

简易证明

设 \(g = gcd(a, b)\), 则 \(a = a'g,\) \(b = b'g\), \(lcm(a, b) = a'b'g\)

\(gcd(a, b) + lcm(a, b) = g(1 + a'b')\)

\(a + b = g(a'+b')\)

\(gcd(a, b) + lcm(a, b) - a - b = g(a' + 1)(b' + 1) > 0\)

所以不论怎么修改, 和都会增大(前提是本次修改对序列产生变化, 如 \(a\) 是 \(b\) 的倍数就不可以)

考虑 \(gcd\), \(lcm\) 的表示形式

\(a = p_1^{x_1} * p_2^{x_2}......\)

\(b = p_1^{y_1} * p_2^{y_2}......\)

\(gcd = p_1^{min(x_1, y_1)} * p_2^{min(x_2, y_2)}\)

\(lcm = p_1^{max(x_1, y_1)} * p_2^{max(x_2, y_2)}\)

所以我们发现题目中的操作不会改变 \(p\) 的次数, 只是相当于把若干不同的 \(p\) 重新组合

所以直接贪心就行

B

题意中的 \(d\) 显然不能直接使用, 考虑把他拆成 \(dep_y - dep_x\)

那么原式就变成 \((-1)^{dep_x} * (-1) ^ {dep_y} * (a - b * dep_x + b * dep_y)\)

设 \(add_a = (-1)^{dep_x} * b\), \(add_b = (-1)^{dep_x} * (a - b * dep_x)\), 二者只和 \(dep_x\) 有关, 直接子树加即可

至于和 \(dep_y\) 有关的信息, 在单点查的时候算上就行

对于撤销操作, 用 set 存储每个 \(1\) 操作, 按照 dfn 排序, 删的时候 \(lower_bound\), 因为每个操作 \(1\) 只会被删一次, 所以复杂度正确

C

首先, 从一个点出发, 路径长度为 \(d\) 的方案数是可以矩阵快速幂求出的, 直接对邻接矩阵快速幂即可

(我居然不知道啊啊啊)

注意到 \(k\) 非常的小, 我们可以做容斥

设 \(f(S)\) 为不经过 \(i \in S\) 的天龙的方案数, 那么 \(ans = \sum (-1)^{|S| * f(S)}\)

然后就完事了 ? ! 其实不难唉

标签:gcd,04,dep,题解,08,add,lcm
From: https://www.cnblogs.com/Bubblee/p/18345122

相关文章

  • 08-02 题解
    <head><scriptsrc="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"type="text/javascript"></script><scripttype="text/x-mathjax-config">MathJax.Hub.Co......
  • Mac开发基础08-NSWindow(二)
    NSWindow其他使用和技巧NSWindow是macOS应用程序中用于显示和管理窗口的核心类。可用于创建、编辑和管理应用程序的窗口。1.自定义窗口的内容视图层级替换默认的内容视图NSWindow默认包含一个内容视图,你可以使用自定义内容视图来替换它。Objective-CNSView*customVie......
  • 洛谷P1081【NOIP2012提高组】开车旅行
    题目见[NOIP2012提高组]开车旅行-洛谷(懒得打题目了)我们直接上代码#include<iostream>#include<cstdlib>#include<cstdio>#include<cmath>#include<cstring>#include<iomanip>#include<algorithm>#include<ctime>#include<queue>......
  • 20240806:点分治,虚树选做
    POJ-1741Tree题意:给定一棵树,求多少无序对\((u,v)\)满足\(\text{dist}(u,v)\lek\)。对于树上的路径进行分类:经过根;不经过根。第二类路径点可以通过递归子树求出。对于经过根的路径,可以一遍dfs求出每个点到根的距离\(\text{dis}(u)\)。问题转化为求\(\text{dis}(u)......
  • Ubuntu 24.04 LTS Linux上安装Azure Data Studio
    AzureDataStudio是由Microsoft开发的开源数据库管理和开发工具。它是一种跨平台数据库管理工具,可在所有流行的操作系统(Windows、macOS和Linux)上运行。该软件提供了一个现代编辑器和丰富的界面,用于管理各种数据库系统,例如MicrosoftSQLServer、PostgreSQL等。它还为......
  • Ubuntu 24.04 LTS Noble安装OpenSSH服务器
    OpenSSH服务器在 UbuntuLinux上提供安全外壳(SSH)协议,以便远程管理系统,同时提供高级别的加密,确保安全。虽然许多Linux系统默认配备OpenSSH服务器,但在Ubuntu24.04上,我们必须手动安装它。因此,在本教程中,我们将介绍在Ubuntu24.04系统上安装和配置OpenSSH服务......
  • ARC152C 题解
    blog。可能是很简单的,但是我实在是不会这种神秘题/ll/ll。Conclusion1.记\(d=a_n-a_1\),则极差始终等于\(d\)。证明显然。Conclusion2.操作极值时,最小值始终变化为\(d\),并且可以进行无限次这样的变化。证明显然。题意转变:最小化\((\texttt{最小值}\bmodd)\),且最小......
  • AISING2020E 题解
    blog。没题解就来写一篇捏。显然\(L_i>R_i\)的人都想去左边(记为LFT人),\(L_i<R_i\)的人都想去右边(记为RHT人),\(L_i=R_i\)的人可以摆烂。(LFT人与RHT人互相干扰,很难刻画。于是找性质。)存在最优方案,使得所有LFT人都在RHT人的左边。证明:如果有RHT人在LFT人的左边,......
  • T240806【2-(一)-1】
    [T240806]设连续函数\(C:~z=z(t),~t\in[\alpha,\beta]\),有\(z'(t_0)\neq0~~(t_0\in[\alpha,\beta])\),试证明曲线\(C\)在点\(z(t_0)\)处有切线.证:先证明曲线\(C\)存在无重点的\(z(t_0)\)邻域.由题设知\(\exists\delta>0\),对\(\forallt_1\inU_{\delta}^......
  • pbootcms网站后台关闭验证码后, 无法登录问题解决方法
    最近闲来无事,在后台将pbootcms的登录验证码关闭了(全局配置-配置参数-安全配置-后台验证码)结果问题来了,第二天登录后台一直提示验证码不能为空。 这不是自己给自己找事吗!现在想输入验证码,也没有地方输入。 从程序上解决吧 apps\admin\controller\IndexController.ph......