首页 > 其他分享 >Tricks

Tricks

时间:2024-04-09 17:23:10浏览次数:20  
标签:kb right int dfrac Tricks long

Maximum Value

\(a_i - \left[ \dfrac{a_i}{a_j} \right] a_j = a_i \bmod a_j\)

枚举 \(k=\left[ \dfrac{a_i}{a_j} \right], b=a_j.\)

余数比除数小。 \(b>a-kb>0 \iff (k+1)b>a\geq kb.\)

那么 \(a\) 就是 \(\le (k+1)b\) 的最大数。二分就好。

程式
#include <bits/stdc++.h>
#define ll long long
using namespace std;
const int N=1e5+10;
int a[N];
int n,ans;
int main(){
	scanf("%d",&n);
	for(int i=1;i<=n;++i) scanf("%d",&a[i]);
	sort(a+1,a+n+1);
	n=unique(a+1,a+n+1)-a-1;
	for(int j=1;j<=n;++j)
	for(int k=1;k<=a[n]/a[j];++k){
		ans=max(ans,a[(lower_bound(a+1,a+n+1,k*a[j])-a-1)]%a[j]);
	}
	return printf("%d\n",ans),0;
} 

标签:kb,right,int,dfrac,Tricks,long
From: https://www.cnblogs.com/QxBlogs/p/18124384

相关文章

  • Tricks
    字符串计算一个字符串\(S\)的border的时间复杂度是\(O(|S|)\)的,且与模板串无关。在更换模板串时,不需要重新计算border。对于两个字符串集合,两两匹配的时间复杂度从\(m\sum|S|+n\sum|T|\),降低到了\(\sum|S|+n\sum|T|\)。(2.16A60pts)动态规划有些题目可以......
  • [Some Tricks] 自动取模类
    consti128o=1;template<i64mod,i64invpow=mod-2>structModular{u64M=(o<<64)/mod;i64query(i64x){u64x_=1ull*x;u64q=1ull*(((i128)(M)*(i128)(x_))>>64);u64r=x_-q*(1ull*mod......
  • tricks I
    1.P2824排序碰见这种只有最后有一个查询的问题我们可以考虑二分最后的答案。具体地,对于当前\(mid\),把所有小于\(mid\)的设为\(0\),其他的设为\(1\)。此时我们只需要维护最后的位置是否大于\(mid\)就好。那么每次升降序的排序就很好办了。我们用线段树维护一个区间和,也......
  • Essay - OI tricks
    ......
  • CV常用Tricks
    训练CV比赛常用Tips&Tricks目录引言1.图像增强颜色增强RGBNormBlackandWhiteBenGraham:Grayscale+GaussianBlurHue,Saturation,BrightnessLUVColorSpaceAlphaChannelYZColorSpaceLumaChromaCIELabYUVColorSpaceCenterCropFlippingsRandom......
  • 洛谷 P8955 「VUSC」Card Tricks
    洛谷传送门很显然每个数的每一位最多只会修改一遍。于是拆位,每一位开个并查集,存下一个不拥有这一位的数,就可以暴力修改了。但是空间是\(O(n\logV)\)的,炸了。于是可以考虑手写i24类,同时并查集寻找祖先不要用递归版的路径压缩,然后就过了。code//Problem:P8955「VUSC」......
  • Python Tricks
    1.同时按照一个list的大小排序两个listdefreturn_sorted_list(cclass):namelist=[]numlist=[]forcatincclass.cat:namelist.append(cat.catName)numlist.append(cat.catNum)#排序name_num_zip=zip(namelist,numlist)......
  • 高级统计 | Tricks & Review
    打算写一个综合性比较强的文章。全文分为六个章节:基本概念,回归,分类,模型选择,评价指标,无监督学习。基本概念1基本概念线性代数的知识十分有意义。在此假定已知矩阵的加减乘运算。1.1矩阵的初等变换初等变换专门设计用来执行某种操作,如行(列)交换、行(列)倍乘,或者将一个行(......
  • Tricks
    图论拓扑排序中有形如"让某个点尽量早出队”的限制,可以建反图转化为“让某个点尽量晚出队”的形式。P1954,P3243。\(k\)个点的LCA为dfs序最大和最小的两点的LCA。根分别到\(k\)个点路径的并集可以差分为根到\(k\)个点的路径减去根到dfs序相邻两点的LCA的路径。数据结构......
  • OI Tricks
    记录一些见到的感觉很有用的tricks。平均值对于和的平均值(形式化地,\(\bara=\dfrac{\sum_{i=1}^na_i}{n}\)),可以转化成\(a_i-\bara\)然后和\(0\)乱搞。异或哈希就是xorhash,可以在CF上找到详细教程:Link。主要用于只关心元素集而不关心顺序的时候。(可能......