题目链接

题意 : 给出 N 种纸币、并且给出面值、每种纸币的数量可以任选、问你得出来的数在 k 进制下、末尾位的数有多少种可能、输出具体方案

分析 :

纸币任意选择组成的和

可以用一个一次多项式来表示

A1*B1 + A2*B2 + A3*B3 + ... + An*Bn ( A 为面值、B 为数量 )

根据裴蜀定理、这个一次多项式的结果集应当是 gcd( A1、A2 .... An ) 的倍数

然后考虑怎么得到每个数 k 进制下的最后一位数

实际上你考虑一下十进制是怎么转化为 k 进制的

就能够分析出、只要将这个十进制模以 k 就能得到

那么也就是说要求 ( A1*B1 + A2*B2 + A3*B3 + ... + An*Bn ) % k 的结果集

模可以转化为减法 故有 A1*B1 + A2*B2 + A3*B3 + ... + An*Bn - y*k

那么结果集就应当是 gcd( A1、A2 .... An 、k ) 的倍数

那么总数就有 k / gcd( A1、A2 .... An 、k )

具体的方案就直接枚举 gcd 的倍数就行了、上界为 k

#include<bits/stdc++.h>
using namespace std;int main(void)
{int n, k;cin>>n>>k;int GCD = -1;for(int i=1; i<=n; i++){int tmp;cin>>tmp;if(GCD == -1) GCD = tmp;else GCD = __gcd(GCD, tmp);}GCD = __gcd(GCD, k);cout<< k / GCD <<endl;for(int i=0; i<k; i+=GCD) cout<<i<<" "; cout<<endl;return 0;
}

View Code

转载于:https://www.cnblogs.com/LiHior/p/9538467.html

Codeforces #499 E Border ( 裴蜀定理 )相关推荐

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

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

  2. 【裴蜀定理】BZOJ 1441 MIN

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

  3. BZOJ 2257: [Jsoi2009]瓶子和燃料【数论:裴蜀定理】

    2257: [Jsoi2009]瓶子和燃料 Time Limit: 10 Sec  Memory Limit: 128 MB Submit: 1326  Solved: 815 [Submit][St ...

  4. bzoj 1441: Min 裴蜀定理

    题目: 给出\(n\)个数\((A_1, ... ,A_n)\)现求一组整数序列\((X_1, ... X_n)\)使得\(S=A_1*X_1+ ...+ A_n*X_n > 0\),且\(S\ ...

  5. [BZOJ 1441]Min(裴蜀定理)

    Description 给出n个数(A1...An)现求一组整数序列(X1...Xn)使得S=A1*X1+...An*Xn>0,且S的值最小 Solution 裴蜀定理: 显然gcd(a,b)| ...

  6. BZOJ2299 [HAOI2011]向量 【裴蜀定理】

    题目链接 BZOJ2299 题解 题意就是给我们四个方向的向量\((a,b),(b,a),(-a,b),(b,-a)\),求能否凑出\((x,y)\) 显然我们就可以得到一对四元方程组,用裴蜀定理判断 ...

  7. 牛客练习赛52 | C | [烹饪] (DP,裴蜀定理,gcd)

    牛客练习赛52 C 烹饪 链接:https://ac.nowcoder.com/acm/contest/1084/C来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 327 ...

  8. 【BZOJ-2299】向量 裴蜀定理 + 最大公约数

    2299: [HAOI2011]向量 Time Limit: 10 Sec  Memory Limit: 256 MB Submit: 1118  Solved: 488 [Submit][Statu ...

  9. P2231 [HNOI2002]跳蚤(裴蜀定理/莫比乌斯反演)

    P2231 [HNOI2002]跳蚤 给定一个长度为n+1的一列数,第n+1位为m,前n位小于m 求解使得他n+1个数的加减可以凑出1的方案数 首先可以凑出1,这显然是裴蜀定理,推一推就发现他要求所有 ...

最新文章

  1. 今年1篇Science,2篇NBT,2篇MP,1篇PNAS等11篇文章,遗传发育所白洋组在植物微生物组取得系列进展!
  2. linux命令grpck,不可不知的的grpck命令【每日一个知识点第184期-Linux】
  3. 小叮咚切分词方法加入sourceforge.net中WebLucene分词模块
  4. 数据库存带微信表情的昵称
  5. don't run elasticsearch as root
  6. linux常用关机命令及其区别-Shutdown halt reboot init
  7. 河北体检系统诚信企业推荐_应用多的隔膜计量泵价格诚信企业推荐
  8. js 正则表达式判断价格
  9. java 俄语月份,适当的俄语月字符串翻译Java
  10. 开源激荡 30 年:从免费社区到价值数十亿美元公司
  11. 请详细描述listview与gridview的异同点_一建考试中,实在不会的怎么办?教你从题目中获取得分点!...
  12. SQLite指南(4) - FAQ列表(important)
  13. 前端自动化测试概览【超全面介绍】包你学废
  14. 手机微信连不上wifi服务器怎么回事,微信连不上wifi怎么办?
  15. 通俗易懂,unity和c#是什么关系
  16. Https证书的安装
  17. 如何用建木CI一键部署Java构件到Nexus
  18. 备份微信聊天记录到电脑上,并且可以随时导回
  19. 《Excel数据可视化:一样的数据不一样的图表》——导读
  20. 通用计算机的发展历程是巨型机大型机小型机,计组1——计算机系统概述

热门文章

  1. Python 相对路径问题:“No such file or directory“,原因及解决方法
  2. Python 技巧篇-字符串灵活处理:字符串过滤、字符串拼接,字符串切片,特殊、超长字符串的处理实例演示
  3. 4.3 matlab常用的特殊图形(条形图、直方图、饼图、散点图等)
  4. Simulink仿真 第八节 积分模块
  5. randn--创建正态分布随机矩阵
  6. DIP第六章习题解答
  7. 调用摄像头_摄像头 | 浏览器调用摄像头并实现截图保存的效果
  8. RxJava RxPermissions 动态权限 简介 原理 案例 MD
  9. (原创)cocos2dx-lua TableView官方demo分析
  10. PCB 内网实现《OCR文字识别》实现逻辑