首页 > 其他分享 >CF1847E Triangle Platinum? 题解

CF1847E Triangle Platinum? 题解

时间:2024-02-08 20:00:15浏览次数:33  
标签:Platinum Triangle 题解 询问 leq 确定 now 我们 neq

感谢 @swiftc 管理反馈的信息,对于题目大意确定的东西进行了完善。

交互题。

题目大意

有一个长度为 \(n\) 的序列 \(a\) 满足 \(1 \leq a_i \leq 4\),现在你可以进行不超过 \(5500\) 次询问,每次询问询问三个数 \(1 \leq i < j <k \leq n\),你将会得到 \(a_i,a_j,a_k\) 构成的三角形面积的平方乘 \(16\) 的结果,特别的,如果构不成三角形你将会得到 \(0\)。

你最后需要确定具体的序列 \(a\),如果确定不了请输出 \(-1\)。

数据范围为 \(n \leq 5000, 1\leq a_i\leq 4\)。

思路

考虑 \(5500-5000=500\),我们可以利用这 \(500\) 从次操作干什么呢。

我们如果对于一个长度为 \(k\) 的序列暴力,那么我们需要消耗 \(\binom{k}{3}\) 次操作,时间复杂度为 \(O(2^{2k}k^3)\)。

我们选定 \(k=9\),那么根据鸽巢原理,这 \(9\) 个数中,必然有一个数出现次数 $ \geq 3$。

直接暴力找出这个数,记为 \(s\),这三个数下标为 \(x,y,z\),然后开始分类讨论。

  1. \(s=1\),那么我们顺序扫过去,当前为 \(now\),如果询问 ? x y now 结果不是 \(0\),那么我们可以确定 \(a_{now}=1\),否则确定 \(a_{now} \neq 1\)。接下来我们拿出 \(a_{now } \neq 1\) 的 \(k\) 个数来暴力,这样就可以归类到第二种情况。
  2. \(s \neq 1\),考虑这个时候询问 ? x y now 的结果对于不同的 \(a_{now}\) 来说必定不同,所以我们直接扫一遍就可以了。

时间复杂度 \(O(2^{2k}k^3)\)。

代码,写的可能有点丑。

标签:Platinum,Triangle,题解,询问,leq,确定,now,我们,neq
From: https://www.cnblogs.com/OccasionalDreamer/p/18012081

相关文章

  • [ABC327G] Many Good Tuple Problems 题解
    Description对于一对长度均为\(M\)且元素值在\(\left[1,N\right]\)之间的序列\((S,T)\),定义其为好的当且仅当:存在一个长度为\(N\)的\(01\)序列\(X\),使得其满足如下条件:对于任意\(i\in\left[1,M\right]\),有\(X_{S_i}\neqX_{T_i}\)。给定\(N,M\),求在......
  • CF1918G Permutation of Given 题解
    总体思路本题通过每次在已知序列中加入\(2\)个元素的方法,可以构造出满足条件的序列\(A\),这里提供一种新的构造方法。性质因为序列\(A\)中所有元素构成的可重集与序列\(B\)中所有元素构成的可重集完全相等,所以\(A\)中所有元素之和与\(B\)中所有元素之和相等。\[\s......
  • SP277 CTGAME - City Game 题解
    题目传送门前置知识单调栈解法令\(f_{i,j}(1\lei\len,1\lej\lem)\)表示从\((1,j)\)到\((i,j)\)中以\((i,j)\)结尾的均为F的子串长度,即\((i,j)\)上面可延伸的最大距离(子矩形的长)。用单调栈的第一维存储子矩形的长,第二维存储子矩形的宽。考虑依次枚举每一......
  • qoj8171 Cola 题解
    题目链接点击打开链接题目解法很牛的题!!!会不了一点令\(pref_i\)表示第\(i\)轮知道了前缀\([1,...,i]\)考虑怎样的\(pref\)序列是合法的(即采用最优策略):\(pref_0=0\)\(\forall_{i\in[0,n-1]}\;pref_i\lepref_{i+1}\)\(pref\)中\(x\)的出现次数\(\len-x-1\),因......
  • [AGC021E] Ball Eat Chameleons 题解
    Description有\(n\)只变色龙,一开始都是蓝色。现在你喂了\(k\)次球,每次指定一只变色龙吃下你指定颜色的球。一只变色龙从蓝色变成红色当且仅当它吃的红球比蓝球多;一只变色龙从红色变成蓝色当且仅当它吃的蓝球比红球多。求最后能使所有变色龙都变成红色的方案数。两个方案......
  • AT_abc270_g [ABC270G] Sequence in mod P 题解
    题目传送门前置知识大步小步算法解法递推式为\(x_{n}=(ax_{n-1}+b)\bmodp\),发现可以统一消去\(\bmodp\),只在最后参与计算。以下过程省去模运算。当\(x_{0}=t\)时,则\(n=0\)即为所求。当\(a=0,x_{0}\net\)时,递推式转化为\(x_{n}=b\bmodp\)。若\(b=t\),则......
  • UVA10225 Discrete Logging 题解
    题目传送门前置知识大步小步算法题意多组询问,每次询问依次给定\(p,a,b\),求\(a^{x}\equivb\pmod{p}\)的最小非负整数解,其中\(a,p\)互质。解法BSGS板子题,不做过多介绍。貌似本题比P3846[TJOI2007]可爱的质数/【模板】BSGS和BZOJ3239DiscreteLogging数据较强......
  • [AGC041F] Histogram Rooks 题解
    题目链接点击打开链接题目解法好牛(难)的题!!!所有都被覆盖不难想到容斥暴力的容斥是钦定集合\(S\)中的位置都没被覆盖,然后把不能填棋子的点都去掉,假设剩下的不受限制的点的个数为\(c\),则答案为\(\sum2^c(-1)^{|S|}\)这个暴力是很难直接优化的如果一列被有点被钦定了,那么......
  • 【洛谷 P2670】[NOIP2015 普及组] 扫雷游戏 题解(模拟)
    [NOIP2015普及组]扫雷游戏题目背景NOIP2015普及组T2题目描述扫雷游戏是一款十分经典的单机小游戏。在行列的雷区中有一些格子含有地雷(称之为地雷格),其他格子不含地雷(称之为非地雷格)。玩家翻开一个非地雷格时,该格将会出现一个数字——提示周围格子中有多少个是地雷格。游戏的......
  • UVA12024 Hats 题解
    题目传送门前置知识错位排列题意有\(t\)组询问,每次询问给定一个\(n\),表示有\(n\)个人,每人各有一个属于自己的帽子,求所有人都带错帽子的概率(不要求约分至最简形式)。解法错排板子题,\(\dfrac{D_{n}}{A_{n}^{n}}\)即为所求。代码#include<bits/stdc++.h>usingnamespac......