首页 > 其他分享 >2023.10.7 LGJ Round

2023.10.7 LGJ Round

时间:2023-10-08 19:34:01浏览次数:41  
标签:LGJ 二分 le 质数 2023.10 mid ZZH 操作 Round

A

你每秒种可以施展一种秘籍 \(\{a_i,b_i\}\),使得后面 \(a_i\) 秒每秒都造成 \(b_i\) 伤害。问至少多少秒可以造成 \(M\) 的伤害。
共 \(n(n\le 3e5)\) 种秘籍,\(M\le 1e18,a,b\le 1e9\).

显然可以二分答案,考虑二分 \(mid\),那么我们要造成最多的伤害。
贪心,每秒都选择在 \(mid\) 秒内造成伤害最多的。
如果当前剩余 \(p\) 秒,对于 \(a_i\le p\) 的贡献是 \(a_ib_i\),其他的贡献是 \(p\times b_i\).
只需要维护这个最大值,可以对于 \(a_i\) 排序,对于每个时间段处理即可。

B

有两个树 \(n\le 1e6\),两棵树分别有一枚棋子在 \(s,t\) 处。
你要把 \(s,t\) 都移动到 \(1\) 节点,每次可以移动任一枚棋子至相邻点。
求在所有时刻中,\(s,t\) 所在点编号的和的最大值最小是多少。

显然是二分答案,考虑二分 \(mid\),
考虑贪心,那么问题变成了:
不断询问 \(s\) 在不经过大于 \(mid-t\) 的点能到达的最小点,并使 \(s\) 到这个点。\(t\) 同理。
由于 \(s,t\) 不断变小,所以 \(mid-t\) 是递增。
使用并查集,从小到大把点加入,维护每个连通块内最小点。
由于询问递增,所以并查集只需要把 \(1\sim n\) 扫一遍就行了。

C

给定长为 \(n(n\le 5e4)\) 的序列 \(a\),你可以更改一个数改成一个 \(\le 5e5\) 的正整数,求最多多少子串 \(\gcd>1\).
考虑上值域的限制,就会稍微难处理一点,需要用合理的方法枚举这个位置选哪几个质数。
除了前后缀不变的贡献,经过这个点 \(i\) 的子串有三种:\(l<i,r=i\) ;\(l=i,r>i\) ;\(l<i<r\) 。(忽略 \(l=r=i\) )
对于前两种,只要有一个质数即可确定贡献;而第三种只和 \(\gcd(a_{i-1},a_{i+1})\) 有关。
所以可以枚举 \(\gcd\) 内选了哪几个,有 \(2^6\) 种情况;然后分别再枚举两个质数,统计贡献。

D

ZZH 有很多的数,经过统计,ZZH 一共有 \(v_0\) 个 \(0\),\(v_1\) 个 \(1\)...\(v_{2^n-1}\) 个 \(2^n-1\)。因为一些原因,ZZH 只有这 \(2^n\) 种数。
ZZH 和 GVZ 要对这些数进行 \(m\) 次操作。每一次操作由一个人进行。每一次,有 \(p\) 的概率由 ZZH 操作,\(1-p\) 的概率由 GVZ 操作。
两人进行操作的时候都会依次操作每一个数。对于一个数 \(s\) ,
如果 ZZH 对这个数进行操作,她会在 \(0,1,,,2^n-1\) 中找出所有的 \(t\),满足\(t\text{ or }s=s\),然后将s等概率随机变成找出的 \(t\) 中的一个。
如果GVZ对这个数进行操作,她会在 \(0,1,,,2^n-1\) 中找出所有的 \(t\),满足 \(t \text{ and } s=s\),然后将s等概率随机变成找出的 \(t\) 中的一个。
因为操作需要非常长的时间,她们想要知道所有操作结束后,对于每一个 \(i\),\(i\) 的个数的期望。

标签:LGJ,二分,le,质数,2023.10,mid,ZZH,操作,Round
From: https://www.cnblogs.com/Simon-Gao/p/17746346.html

相关文章

  • CF1857B Maximum Rounding
    题目大意给定一个自然数\(n\),可以对任意一位进行四舍五入,可以进行任意次,求能得到的最大数。\(n\)的长度不超过\(2\times10^5\),没有前导零。solution首先,选择四舍五入的数一定\(\ge5\),不然对答案没有贡献。其次,高位的数可能会受到低位的进位,这启发我们从低位向高位考虑......
  • Codeforces Round 900 (Div. 3) E. Iva & Pav (位运算)
    CodeforcesRound900(Div.3)E.Iva&Pav//思路:10^9转换为2^32上的位,进行位运算,a[x][i]为到x为止第i位的1个数前缀和//对于与运算,如果当前i的前缀和不为r-l+1,则这一位的与运算结果为0//当找到从左往右第一个位置i为1使得k在这位为0,则与运算前缀大于k//二分查找最后一......
  • Codeforces Round 901 (Div. 2) C. Jellyfish and Green Apple (位运算)
    CodeforcesRound901(Div.2)C.JellyfishandGreenApple//思路:浮点数转二进制,a/b的结果为gcd(a,b)*最简分式(n/m)的结果//苹果能分的前提是人数得是一个2的次幂数,通过切割只能分为形同0.001的二进制小数//a/b的二进制如果在从左到右的sp位为1,则需要切割到这个情况//一个......
  • 【GJOI 2023.10.6 T2】 亿只只因的回家路
    亿只只因的回家路题意:给出一个\(n\)点\(m\)边的无向图,每条边有长度\(v_i\),有\(k\)只小鸡,第\(i\)只小鸡在\(id_i\)号节点,鸡妈妈在\(1\)号点,现鸡妈妈要接所有的小鸡,小鸡与鸡妈妈的速度为\(1\),问最短多久鸡妈妈才能接到所有的小鸡,\(n\le10^5,k\le2\times10^......
  • 周赛 Round 14 2023.10.3
    内部比赛链接:周赛14A.修改序列modify考虑且最小值和最大值之差最多为\(1\),那么最终序列肯定呈均分状态。又因为最终序列总和不变,则可以算出均分状态下的每一个值。然后每个数\(A_i\)则变成距离它最近的最终序列值就行。B.表示法knuth模拟题,注意需要在除了前缀ten之......
  • 2023.10-12 日记
    10.6只买到了石家庄到天津的票,所以先去zsy家玩了zsy他妈买了酱香拿铁,尝了尝感觉还行,酒味很淡且和咖啡并不冲突,可以接受。瑞幸敢上市确实是有道理的一等座确实舒服,几乎没有坐车的疲惫......
  • 2023.10.6——每日总结
    学习所花时间(包括上课):0h代码量(行):0行博客量(篇):1篇今天,上午学习+休息,下午学习+休息;我了解到的知识点:1.任务明日计划:学习+休息......
  • 2023.10.6 若干杂题
    P1552[APIO2012]派遣每个点作为管理者,只需要计算其子树内,最多有多少个人加起来不大于\(M\),考虑维护前\(k\)小的元素。可以使用左偏树合并。然而其实可以平衡树合并,每次在平衡树上二分。P2685[TJOI2012]桥首先,Boss镇守的桥一定是最短路上的边,使得我们不得不改变线路。......
  • 2023年石门中学NOIP模拟测试(2023.10.6)
    原题大战T1范围\(n\leq10^{14}\)。不用动脑,打个表找找规律。考虑一个数\(x\),在\(1\simn\)中包含\(x\)这个约数的个数为\(\left\lfloor\dfrac{n}{x}\right\rfloor\),那么既然是异或,只需要判断奇偶性算贡献即可。然后你发现这玩意显然可以整除分块,算连续一段贡献,只需......
  • Codeforces Global Round 2
    C题结论就是每行每列不同的个数必须是偶数。D题首先注意到对于长度相同的询问,答案都是一样的。同时相同的s可以直接丢掉。那么我们将s排序之后,将相邻的差再进行排序,然后将询问从小到大处理。相当于是将这些段拼接在一起。#include<cstdio>#include<algorithm>#include<cstr......