题目

题目描述

给出n个数(A1...An)现求一组整数序列(X1...Xn)使得S=A1X1+...AnXn>0,且S的值最小

输入格式

第一行给出数字N,代表有N个数 下面一行给出N个数

输出格式

S的最小值

输入输出样例

输入 #1复制

2
4059 -1782

输出 #1

99

说明/提示

对于100%的数据,1 \le n \le 201≤n≤20,|x_i| \le 100000∣xi​∣≤100000

分析

  • 首先,肯定是用这个定理啦

  • 这个定理是 ax+by=c c|gcd(a,b)
  • 所以两个数的最小整数解肯定是两数的gcd
  • 那么多个数
  • 就是多个数的gcd啦

代码

 1 #include<iostream>
 2 using namespace std;
 3 int gcd(int a,int b)
 4 {
 5     if (b==0) return a;
 6     gcd(b,a%b);
 7 }
 8 int main ()
 9 {
10     int n,ans=0;
11     cin>>n;
12     for (int i=1,x;i<=n;i++)
13     {
14         cin>>x;
15         if (x<0)
16           x=-x;
17         ans=gcd(ans,x);
18     }
19     cout<<ans;
20 }

转载于:https://www.cnblogs.com/zjzjzj/p/11318913.html

洛谷 P4549 【模板】裴蜀定理相关推荐

  1. 裴蜀定理(详细定义+应用+模板)

    裴蜀定理 定义:对于非负整数a,b,存在x,y使得ax+by=gcd(a,b),也就是说ax+by能构成的最小正整数就是gcd(a,b),注意(a,b不同时为0) 不难理解,练习一道题吧 模板 裴蜀定 ...

  2. P4549【模板】裴蜀定理

    HyperlinkHyperlinkHyperlink https://www.luogu.org/problem/P4549 DescriptionDescriptionDescription 给定 ...

  3. 裴蜀定理(或 贝祖定理 )

    裴蜀定理(或 贝祖定理 ),说明了对任何 整数 a.b和它们的 最大公约数 d,关于 未知数 x和y的线性不定方程(称为裴蜀等式):若a,b是整数,且 gcd (a,b)=d,那么对于任意的整数x,y ...

  4. 裴蜀定理的证明与推广应用

    裴蜀定理:对于方程ax+by=max+by=max+by=m(a,ba,ba,b为正整数),x,yx,yx,y有整数解的充要条件是m%gcd(a,b)=0m\%gcd(a,b)=0m%gcd(a,b) ...

  5. 【裴蜀定理】BZOJ 1441 MIN

    P4549 [模板]裴蜀定理 这是一道bzoj的权限题,同时又是一道luogu的模板题 在标题上写模板不是很好, 决定放bzoj的名字来撑撑场面 bzoj: 裴蜀定理:dalao题解 显然就很优秀ov ...

  6. CF510D Fox And Jumping(动态规划转换为最短路,O(n^2×2^9) -> O(nlogn),裴蜀定理应用)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 以下内容摘自 我的文章:算法竞赛中的数论问题 - 数论全家桶(信奥 / 数竞 / ACM)作者孟繁宇, ...

  7. P4549-[模板]裴蜀定理

    正题 题目链接:https://www.luogu.org/problem/P4549 题目大意 一个整数序列AAA,一个整数序列XXX使得 ∑i=1nAiXi=S\sum_{i=1}^n A_iX_ ...

  8. 365 水壶问题(递归、数学-裴蜀定理)

    1. 问题描述: 有两个容量分别为 x升和 y升的水壶以及无限多的水.请判断能否通过使用这两个水壶,从而可以得到恰好z升的水? 如果可以,最后请用以上水壶中的一或两个来盛放取得的z升水. 你允许: 装 ...

  9. 裴蜀定理详解+例题: BZOJ 1441 MIN

    在数论中,裴蜀定理是一个关于最大公约数(或最大公约式)的定理 在数论中,裴蜀定理是一个关于最大公约数(或最大公约式)的定理.裴蜀定理得名于法国数学家艾蒂安·裴蜀,说明了对任何整数a.b和它们的最大公约 ...

  10. 密码学基础——辗转相除法,费马小定理,欧拉定理,裴蜀定理,中国剩余定理

    文章主要根据百度百科和维基百科相关相关知识点整理而成! 辗转相除法 辗转相除法, 又名欧几里德算法(Euclidean algorithm),是求最大公约数的一种方法.它的具体做法是:用较小数除较大数 ...

最新文章

  1. Spark学习之简介
  2. Android 从AndroidManifest获取meta-data
  3. 一直苦于没有好的资产管理软件,GLPI能解决吗?
  4. Flowportal-BPM——环境配置
  5. C#的变迁史07 - C# 4.0 之线程安全集合篇
  6. python求图形面积_求高效的,计算两多边形重叠面积的算法,python实现
  7. template多行编写的方式
  8. 网络编程基础知识(待更新补充)
  9. eclipse3的jsp支持简单配置
  10. Leetcode207---课程表(逆拓扑排序)
  11. 关系网络lbs的应用_基于智能移动端的LBS+地图应用可以 说是LBS营销的核心模式,也是LBS营销的基础...
  12. win11电脑开机密码忘记了怎么办?
  13. java小球下落_java基础-小球下落问题
  14. C# Word控件 文档保护
  15. windows 下配置 Nginx 常见问题
  16. 思维导图工具之Freeplane(上篇)
  17. 图灵学院专用-- 00JVM参数手册
  18. for循环2000年到3000年的闰年
  19. Python绘制气象风场
  20. 云呐|仓库RFID固定资产盘点软件有哪些优势

热门文章

  1. 76.Nodejs Express目录结构
  2. P2920 [USACO08NOV]时间管理Time Management
  3. 在Centos环境下搭建Confluence
  4. Syncthing vs BitTorrent Sync
  5. Visual Studio 2015 RC中的ASP.NET新特性和问题修正
  6. 理解 Delphi 的类(十) - 深入方法[13] - 在 interface 区声明的方法
  7. Android如何通过shareduserid获取系统权限
  8. lucene的简介及其工作方式的学习总结
  9. react 注释html,React之JSX语法
  10. c++课设实验室管理系统_庆安知名实验室设备管理系统平均价格