首页 > 其他分享 >1.21幽默总结

1.21幽默总结

时间:2025-01-22 12:33:34浏览次数:1  
标签:总结 gcd 一下 幽默 然后 leq 1.21 dp mod

CF1900D

*2000
*dp,rongchi
首先就排个序,答案为 \(\sum_{i=1}^n \sum_{j=i+1}^n gcd(a_i,a_j) \times (n-j)\)。
考虑枚举 \(j\),那么现在的想法就是对于一个 \(j\) 求合前面数的 \(gcd\) 的和。这个东西就是一个经典容斥,令 \(f_x\) 表示当前 \(x\) 的倍数的 \(a\) 的个数,\(g_x\) 表示 \(gcd(a_i,a_j)=x\) 的 \(a_j\) 数量。那么首先令每个 \(g_x=f_x\) 然后容斥,启动!对于每个 \(g\) 就减一下他倍数的 \(g\),但是值域太大了,不过没关系,就对于每个有值的 \(g\) 对他的因数减一下就行,但是这样的话更新顺序需要 reverse 一波,就在预处理因数的时候 reverse 一下即可。
该套路: P1447 [NOI2010] 能量采集 CF839D Winter is here

CF840B

*2100
*dfs,spanning tree
感觉,可能,也是比较套路的一个题?
首先,如果每个 \(d\) 都确定了,那么显然这个时候就首先可以判一下总度数,如果是奇直接叉掉。
然后的话考虑如果有=-1 的 \(d\) ,那么就以这个点来 \(dfs\) 来一波生成树,为啥捏?等会解释。在 \(dfs\) 到叶子结点的时候显然必须要他的父节点来搞,如果他的 \(d=1\) 那么只能在父节点操作一波,就把连接两点的边来操作,就这样从底下网上做,对每个点记录一下收否需要在父节点帮忙选一条边 \(flip\),然后因为我最顶上的点(根结点)的 \(d\) 是 \(-1\),所以最后一定可以都调整好。
然后是全都确定的,可以证明这个时候随便选个结点做都可以,当然似乎我只会感性证明。。。。。

CF900D

*2000
*dp,rongchi
首先因为 \(gcd=x\),那么显然所有数都是 \(x\) 的倍数那么就有和应该也是 \(x\) 的倍数,那么如果 \(y\) 不是 \(x\) 的倍数就寄了。这个判完以后可以把所有数都除掉 \(x\),那么问题转化为:拿一些数满足 \(gcd=1\) 且和为 \(\frac{y}{x}\),求方案数。我们令 \(f_x\) 表示和为 \(x\) 且 \(gcd=1\) 的方案数,接下来考虑咋算。正难则反,首先不限制 \(gcd\),此时插板一下可以算出来方案数是 \(2^{x-1}\),然后考虑去掉 \(gcd>1\) 的情况,那么此时可以所有数除掉 \(gcd\),此时的和就是 \(\frac{y}{gcd}\),那么 \(gcd>1\) 的方案数就是 \(\sum f_{\frac{x}{gcd}}\) 其中满足 \(gcd>1\) 且 \(gcd|x\),直接做一下就行了。

CF1875D

*1600
*dp
令 \(f_i\) 表示 \(mex=i\) 时的 \(m_{min}\)。然后转移也比较简单:
\(f_i=min(f_j+(c[i]-1) \times j+i)\)
c[i] 表示 \(a_x=i\) 的数量。

CF730J

*1900
*dp,greedy
首先第一问比较简单,就对 \(b\) 从大到小排个序,然后贪心的选一下即可。
然后看第二问,操作次数=\(\sum a-选中a\),然后就 \(dp\) 一下就差不多了,记个 \(选中a\) 的 \(max\) 即可。

CF980D

*2100
*dsu,math
感觉,可能,有一点点点点想法的题。
注:以下 \(ok\) 表示是完全平方数。
首先第一问肯定是贪心的选,能一起就一起。
然后证明一下平方的传递性(?):若 \(ab\) ok,\(bc\) ok,则 \(ac\) ok.这个感觉还是比较好证的吧,质因数单独考虑,令三个数指数mod 2 分别为 \(x,y,z\),那么有 \((x+y) mod 2 = 0,(y + z) mod 2 = 0\) 减一下就得到 \((x-z) mod 2=0\) 等价 \((x+z) mod 2=0\),然后就做完了。
然后就并查集合并一下,一个子段的答案等价于连通块个数,当然需要特判断一波0吧。

CF213C

*2000
*dp
感觉,可能,比较没有想法的题。
就令 \(f_{i,j,k}\) 表示 \(i\) 步,第一条走到第 \(j\) 行,第二条走到第 \(k\) 行,然后算一下,如果相遇就算一次,否则算两次就差不多了。
答案是 \(f_{2n-1,n,n}\)

CF1151E

*2100
*math
知周所众,链上的连通块数量=点数-边数,然后就对每个点和每条边考虑一波算贡献,每个点的话就要满足 \(l \leq a_i\) 且. \(a_i \leq r\),所以这个点的贡献就是 \(a_i(n-a_i+1)\),然后求个和就是点的总贡献,然后考虑 \((i,i+1)\) 这个边,然后就是 \(l \leq a_i\) 且 \(l \leq a_{i+1}\) 且 \(a_i \leq r\) 且 \(a_{i+1} \leq r\),然后算一下也是差不多了。

CF128C

*2000
*combinatorics
行,列独立,然后每个东西都组合数算一下就行了,感觉没有好写的?
\(comb(n-1,2k)*comb(m-1,2k)\)

标签:总结,gcd,一下,幽默,然后,leq,1.21,dp,mod
From: https://www.cnblogs.com/gsc0618china/p/18685535

相关文章

  • 2025.1.21——1300
    2025.1.21——1300A1300Qingshanhasastring\(s\)whichonlycontains\(\texttt{0}\)and\(\texttt{1}\).Astring\(a\)oflength\(k\)isgoodifandonlyif\(a_i\nea_{k-i+1}\)forall\(i=1,2,\ldots,k\).ForDiv.2contestants,......
  • DeepSeek V3 两周使用总结
    2024年12月26日,杭州深度求索人工智能基础技术研究有限公司发布DeepSeek-V3大模型。官方宣称:(1)基于自研的MoE模型和671B参数,在14.8Ttoken上进行了预训练;(2)多项评测成绩超越了Qwen2.5-72B和Llama-3.1-405B等其他开源模型,在性能上与世界顶尖的闭源模型GPT-4o......
  • 2024年CSDN博客年度总结 Java | 成神之路
    目录 博客创作之旅的前期沉淀年度创作成果​编辑博客创作历程创作风格与技巧创作收获与成长未来规划结束语 博客创作之旅的前期沉淀我于2020年入驻CSDN,初涉技术领域时,作为Java编程的小白,并未即刻投身创作。彼时,我将大量精力投入到知识汲取中。学习期间,我对笔......
  • 关于此题CF2061E_Kevin and And的一些总结
    传送门题目大意:给定\(n\)个数\(a[1...n]\)和\(m\)个数\(b[1...m]\),并且给定整数k,求让任意\(i,j\)使\(a[i]&b[j]\)来替代\(a[i]\)后这\(n\)个数总和最小。首先我们看到题目给的m范围非常小,最大只有10,然后又问我们k次操作之后总和的最小值,第一反应是不是可以直接先求出每个\(a[i]......
  • 系统相关类(详细总结和代码案例拆解)(对小白巨友好)
    前言:小编打算近期更俩三期类的专栏,一些常用的专集类,给大家分好类别总结和详细的代码举例解释。今天就先更新系统相关类第一个  java.lang.Math我们一直都是以这样的形式,让新手小白轻松理解复杂晦涩的概念,把Java代码拆解的清清楚楚,每一步都知道他是怎么来的,为什么......
  • WWW2025 多模态对话系统意图识别挑战赛方案总结
    WWW2025多模态对话系统意图识别挑战赛方案代码实现:https://github.com/klayc-gzl/incent_internvl_2.5_8b最终成绩:大赛背景互联网已成为提供客户服务的主要沟通渠道。网络客户服务面临的一个关键挑战是服务对话中多模态意图的高效识别。通过利用先进的AI和大型语言模......
  • C++类型转换总结
    类型转换隐式转换C++自动执行很多类型转换:将一种算术类型的值赋给另一种算术类型的变量时,C++将对值进行转换;表达式中包含不同的类型时,C++将对值进行转换;将参数传递给函数时,C++将对值进行转换。C++类型转换的规则初始化和赋值进行的转换扩展:将一个值赋给值取值范......
  • 1.21
    1P1162填涂颜色-洛谷|计算机科学教育新生态(luogu.com.cn)只需要环最外圈的0,然后标记,最后填色时没有标记的标为2即可importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStream;importjava.io.InputStreamReader;importjava.io.Outp......
  • 1.21 JUnit单元测试
    JUnit单元测试1)在pom.xml中,引入JUnit的依赖点击查看代码<dependencies><!--https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-api--><dependency><groupId>org.junit.jupiter</groupId><artifactId&......
  • 1.21练习
    原题地址https://www.luogu.com.cn/problem/P4552这道题是一道差分的题目,刚开始的时候我想的是找数列中的众数,然后求大于众数的数和小于众数的数与众数的最大差,然后再将它们相加,但这样很显然不对。在看了题解的思路后发现这道题其实不难(我太笨了)。首先这道题是说通过选定区间[l,......