• 2023-08-07Atcoder ABC313_C-Approximate Equalization 2
    AT_ABC313_C-ApproximateEqualization2Description:给定一个整数序列\(A=(A_1,A_2,···,A_n)\),可以做以下操作任意次(可能为0):选择一个整数对\((i,j)\)\((1\leqi,j\leqn)\),使得\(A[i]-\)=\(1\),\(A[j]+\)=\(1\),求出使得数列\(A\)中的\(max-min\leq1\)所需的最少
  • 2023-08-07[ABC313] C~E 题解
    [ABC313]C~E题解C-ApproximateEqualization2让所有的数字都尽量接近平均数,先算出平均数,然后把所有数字分成两份,一份要加,一份要减,因为平均数有余数,余数肯定给最大的几个,所以这样计算总共需要加减多少个,然后在加减里面取\(\max\)即可。时间复杂度:\(O(n\logn)\)#include
  • 2023-08-07[AT_abc313_d] Odd or Even
    简单题,但是为什么赛场上WA了呢?弱化题目,设\(n=k+1\),发现只需要每一个数不取询问\(k\)次,通过前缀和得出。再设\(k+1\|\n\),发现只需要类似分块即可解决。回到原题,最后的一部分如何计算?我们可以对\([n-k,n]\)这个区间做询问,但是对于已经计算的数不再去除。把
  • 2023-08-06ABC313
    D-OddorEven假设\(A_1\)到\(A_{k-1}\)的和是偶数。那么通过\(n\)次询问可以得到所有数是\(0\)还是\(1\)。如果将\(A_1\)到\(A_{k-1}\)代入检验发现和不是偶数,由于\(k\)是奇数,反转所有数,可以使它合法。#include<bits/stdc++.h>usingnamespacestd;consti
  • 2023-08-05ABC313
    T1:ToBeSaikyo\(x\geqslant\max({p_i}),i>1\)代码实现n=int(input())a=list(map(int,input().split()))ifn==1:exit(print(0))mx=max(a[1:])ans=max(0,mx+1-a[0])print(ans)T2:WhoisSaikyo?对\((A_i,B_i)\)连一条有向边,使得\(A_i