首页 > 其他分享 >CF1458A Row GCD

CF1458A Row GCD

时间:2024-06-05 21:12:01浏览次数:14  
标签:vector gcd int ll CF1458A tie Row GCD

题目链接:https://codeforces.com/problemset/problem/1458/A

这道题比较考察对辗转相除法的理解.

对于gcd的题目,gcd(a,b)=gcd(a,b-a)是一个很常见的trick,知道这个性质即可秒杀本题.gcd也可以像前缀和那样来维护
还需要注意一个细节,由于a[i]-a[i-1]有可能出现负数,所以要先排序.
记得开longlong


inline ll gcd(ll a, ll b){return b == 0 ? a : gcd(b, a % b);}//gcd(a,b)=gcd(a,b-a)(b>a);
int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    int n,m;
    cin>>n>>m;
    vector<ll> a(n+1);
    vector<ll> b(m+1);
    ll res=0;
    for(int i=1;i<=n;i++)
    {
        cin>>a[i];
    }
    sort(a.begin(),a.end());
    for(int i=2;i<=n;i++)
    {
        res=gcd(a[i]-a[i-1],res);
    }
    for(int i=1;i<=m;i++)
    {
        cin>>b[i];
    }
    for(int i=1;i<=m;i++)
    {
        cout<<gcd(res,a[1]+b[i])<<' ';
    }
    
}

标签:vector,gcd,int,ll,CF1458A,tie,Row,GCD
From: https://www.cnblogs.com/captainfly/p/18233808

相关文章

  • GCD-sequence(Round 950)
    #include<bits/stdc++.h>#defineendl'\n'usingll=longlong;typedefunsignedlonglongull;usingnamespacestd;voidGordenGhost();signedmain(){#ifdefGordenfreopen("in.txt","rt",stdin);freopen......
  • GCD构造排列
    题目给定一个长度为n的数组\(a\),试复原长度为n的排列\(p\)其中\(a_i=gcd(p_1,p_2,...,p_i)\),也就是说,\(a_i\)表示排列\(p\)中前\(i\)个数字的最大公约数。(由于数组\(a\)可能是错误的,故有可能无解,此时输出\(-1\)即可)https://ac.nowcoder.com/acm/problem/269091Input输......
  • Winform中,如何使用ChromiumWebBrowser预览网络pdf文件
    一、开发环境vs2022.net8windows10系统二、准备创建Winform项目(名称随意)通过引入依赖包:CefSharp.WinForms.NETCore三、使用1、安装好依赖包后,会自动在工具箱中显示该控件:ChromiumWebBrowser,直接拖到窗体中2、加载urlpdf文件链接很简单,就一行代码chromiumWeb......
  • exgcd 通解(新)
    可能不全,老文章在这什么是通解,我们知道二元一次方程,是如果只有一个式子,那么解会有无数个,而通解就是指让我们只找到一个解就可以推出其他所有解的式子。注意以下变量都为整数。知道了定义下面就是推式子了,首先设\(x,y\)是\(ax+by=\gcd(a,b)\)的一个解,那么有\[y=\le......
  • Java 异常处理 throws
    Java异常处理throwsJava中异常对象的生成有两种方式:由虚拟机自动生成:程序运行过程中,虚拟机检测到程序发生了问题,那么针对当前代码,就会在后台自动创建一个对应异常类的实例对象并抛出。由开发人员手动创建:new异常类型([实参列表]);,如果创建好的异常对象不抛出对程序......
  • antdv: Each record in table should have a unique `key` prop,or set `rowKey` to a
    在使用ant-designvue框架的时候,表格组件里面会碰到 Eachrecordintableshouldhaveaunique key prop,orset rowKey toanuniqueprimarykey这样的报错,具体见下图 原因分析:我看了一下官网,以及搜索了很多答案,最终原因是:在Table中,dataSource和columns里的数据......
  • 使用Arrow管理数据
    在之前的数据挖掘:是时候更新一下TCGA的数据了推文中,保存TCGA的数据就是使用Arrow格式,因为占空间小,读写速度快,多语言支持(我主要使用的3种语言都支持) Formathttps://arrow.apache.org ApacheArrowdefinesalanguage-independentcolumnarmemoryformatforflatandh......
  • Java异常中throw 与throws的区别
    throw与throws区别在Java中,throws和throw是两个不同的关键字,它们在异常处理中起着不同的作用。throws关键字:throws用于声明一个方法可能会抛出的异常。当一个方法可能会抛出异常时,我们需要使用throws关键字在方法签名中声明这些异常。这样,调用该方法的代码就需要处理这些异......
  • CF1973F Maximum GCD Sum Queries 题解
    题目链接点击打开链接题目解法首先想到枚举两个数列的$\gcd$,求最小代价两个数列的\(\gcd\)应该分别是\(a_1,b_1\)的因数或\(b_1,a_1\)的因数这样就把枚举范围缩小到了\(d(a_1)\timesd(b_1)\),这求最小代价需要\(O(n)\),不够快假设枚举的\(\gcd\)分别为\(x,y\)......
  • 窗口函数 | rows between …… and ……
    ROWSBETWEEN...AND... 是SQL窗口函数中的一个子句,用于定义窗口函数操作的行范围。窗口函数允许用户对一组相关的记录执行计算,这些记录被称为窗口。基本语法<窗口函数>OVER([PARTITIONBY<列名>]ORDERBY<列名>[ASC|DESC][ROWSBETWEEN......