首页 > 其他分享 >[2024 AtCoder 比赛历程]

[2024 AtCoder 比赛历程]

时间:2024-02-18 19:33:25浏览次数:24  
标签:AtCoder 题目 比赛 贡献 2024 一个点 历程 解法 mod

2024.1.20 ABC 337-G

题目大意:给定一棵树,对于树上的每个点$u$,定义 $f[u]$ 表示满足点 $w$ 在点 $u$ 到点 $v$ 的路径中,且 $w>v$ 的点对 $(w,v)$ 的数量。 $u$ 可以等于 $w$ 。

解法:比赛时先考虑将一个点钦定为 $w$ 时,该点对其他点的贡献。发现对于一个点,它可以通过它的一个子树内比它要小的点,贡献到除这棵子树以外的所有点(子树包含“向上”的)。于是思考如何快速计算以某个点为根的子树中,有多少个点的编号小于某个点。比赛时想到用个可持久化线段树……但当然打不出来,赛后经过 lym 的启发,发现只用普通的树状数组就行了。我们只需要将树上的点从小到大加入,同时贡献。这样就避免了会统计到不该统计的点的问题。

2024.1.28 ABC 338-D

题目大意:给定一个长度为 $n$ 的环,以及一个长度为 $m$ 的序列,现在需要在这个环上断掉一条边,问在最佳情况下,顺次走完(可以重复)序列中每一个点所需经过的最小边数。

解法:比赛中的做法不知道为什么一直炸,炸的还挺离谱。考虑枚举断掉的边然后计算贡献。对于序列中相邻的两个数,设小的为 $a$ ,大的为 $b$ 。若断掉的边在 $a$ 至 $b$ 的路径上,则贡献为 $n-(b-a)$ ;反之则在 $b$ 至 $a$ 的路径上的贡献加上 $b-a$ (表示选另外的一条路)。然后用差分做就可以了。

2024.1.28 ABC 338-F

题目大意:给定一张 $n$ 个点、 $m$ 条边的有向图(n<=20),每条有向边有一个权值 $w[i]$ ($-10^{6}\le w[i]\le 10^{6}$),问从任意一个点出发,经过所有点的最小的边权和,点和边可以重复经过。

解法:考虑最终的答案是由若干条从点 $x$ 到点 $y$ 的最短路径构成的。所以先处理出每两个点直接的最短路,然后进行转移。

注意事项:在有负边权的图中判断无解,需要考虑有可能一个点沿着一些负边移动的情况

不要乱用short

ARC 148-D

这题显然不是在比赛的时候做的。WC的时候题目选讲中的题目,但是是很好的博弈论。

题目大意:给定 $2n$ 个数,$A$ 和 $B$ 轮流取数,取完后计算 $A$ 取的数的和与 $B$ 取的数的和在$\mod m$ 意义下是否相等,如果不相等,则 $A$ 获胜;否则 $B$ 获胜。

解法:考虑最后只剩两个数的情况,发现只有最后的两个数$a$、$b$ 满足$a-b=b-a(\mod m)$ 时,$A$ 无论取哪个数的结果都是一样的。所以我们可以把满足 $a=b$ 或 $a=b+m/2(\mod m)$ 两两配对。接着我们发现,对于 $a=b+m/2(\mod m)$ 的数对,需要满足其有偶数个,$B$ 才能获胜。所以我们总结一下 $B$ 获胜的条件:需要有若干个满足 $a=b$ 的数对和偶数个满足 $a=b+m/2(\mod m)$ 的数对。

标签:AtCoder,题目,比赛,贡献,2024,一个点,历程,解法,mod
From: https://www.cnblogs.com/Cyanwind/p/18019842

相关文章

  • (2024.2.5-2024.2.18)C语言学习小结
    这两周主要围绕《HeadfirstC》这本书展开C语言学习,同时尝试学习DES密码算法C程序。基本内容《HeadfirstC》学习的内容基本上就是进程与通信、网络、线程这块。以下是思维导图:实践练习除了书上的一些小练习之外,我也实践写了HFC的C语言实验室2的程序,一波三折,详见C代码......
  • 2024-02-18-物联网C语言(6-动态内存申请)
    6.动态内存申请6.1动态分配概述​ 在数组一章中,介绍过数组的长度是预先定义好的,在整个程序中固定不变,但是在实际的编程中,往往会发生这种情况,即所需的内存空间取决于实际输入的数据,而无法预先确定。​ 为了解决上述问题,C语言提供了-些内存管理函数,这些内存管理函数可以按需......
  • 2024牛客寒假算法基础集训营2
    C.TokitsukazeandMin-MaxXOR题解:01Trie观察后发现对序列\(a\)排序并不影响结果然后容易知道,对于\(i<j,a_i\oplusa_j\leqk\),一共有\(2^{i-j-1}\)种序列\(b\)满足条件,特别的,如果\(i=j\),只有\(1\)种满足条件那么现在问题就转换为,我们固定\(a_......
  • 2024-02-17-物联网C语言(5-指针)
    5.指针5.1关于内存那点事存储器:外存和内存 外存:长期存放数据,掉电不会丢失数据,如硬盘、光盘、ROM等 内存:暂时存放数据,掉电数据丢失,如RAM,DDR等内存:物理内存和虚拟内存物理内存:实实在在的存储设备虚拟内存:操作系统虚拟出来的内存操作系统会在物理内存和虚拟内存之间做映......
  • SMU Winter 2024 div2 ptlks的周报Week 3(2.12-2.18)
    这周主要加强了对知识点的掌握。P10161[DTCPC2024]小方的疑惑10从题目可以得知a个连续括号贡献为a(a+1)/2,代价为2a。要求总贡献恰为k,且代价不高于n。一开始我想到了模拟,先取一个贡献低于k最大的a,剩下的再直接在外面套括号,结果wa。又想到可以分出多个a来组成k,就用递归,每次......
  • 2024年首发!高级界面控件Kendo UI全新发布2024 Q1
    KendoUI是带有jQuery、Angular、React和Vue库的JavaScriptUI组件的最终集合,无论选择哪种JavaScript框架,都可以快速构建高性能响应式Web应用程序。通过可自定义的UI组件,KendoUI可以创建数据丰富的桌面、平板和移动Web应用程序。通过响应式的布局、强大的数据绑定、跨浏览器兼容......
  • VNCTF2024-WEB-gxngxngxn
    VNCTF2024-WEB-gxngxngxnCheckin签到题,直接看js文件CutePath按照上述穿越下可以看到一串base64加密的,解密后是账号密码:登录看到有新功能,可以重命名文件.我们找到flag.txt文件,但是不能查看,我们可以利用重命名将flag.txt文件传送到share_main目录下,这样我们就可以查看......
  • 从嘉手札<2024-2-17(2)>
    也不知是岁月过得qianjuan还是花落得匆忙父亲的白发一天天的多下去时至今日竟也满头华发了小时候的父亲总是高大恣意潇洒夏天的蝉鸣悠悠记忆里父亲总是躺在沙发上鼾声大作我蹲在门口用放大镜找那些不知死活的蚂蚁晚风悄悄的吹起天边的月牙我抬起头湛蓝色的天空宛若宝......
  • AtCoder Beginner Contest 341
    AtCoderBeginnerContest341做得太慢了,原因BC题意很难懂,而且一开始AtCoderBetter加载不出来,不好翻译(先用10min做的AB。其中B好几次读错题。看C发现题面这么长压根看不懂,先看小清新D。发现一眼出思路,二分很快写完了。后来调二分边界用了很长时间,实际上此时已经......
  • Toyota Programming Contest 2024#2(AtCoder Beginner Contest 341)(菜小白)
    A-Print341思路:给你一个整数N有N个0和N+1个1组成 01交替输出1 解法:输出10最后输出最后剩余的1即可Code:#include<bits/stdc++.h>usingnamespacestd;intmain(){ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);intN;cin>>N......