题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2257

可以知道最终能够导出的燃料一定是瓶子容量的gcd的倍数,所以此题转化为求n个数中k个数的最大gcd;

暴力枚举一下,放进优先队列里,取最大的、个数>=k个的因数即可。

代码如下:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<queue>
using namespace std;
priority_queue<int>q;
int n,v[1005],k;
int main()
{scanf("%d%d",&n,&k);for(int i=1,x;i<=n;i++){scanf("%d",&x);for(int j=1;j*j<=x;j++)if(x%j==0)q.push(j),q.push(x/j);}while(q.size()){int t=1;int x=q.top();q.pop();while(x==q.top()&&q.size()){t++;q.pop();}if(t>=k){printf("%d",x);return 0;}}printf("1");return 0;
}

转载于:https://www.cnblogs.com/Zinn/p/8982101.html

bzoj2257瓶子与燃料——最大公约数相关推荐

  1. bzoj 2257[Jsoi2009]瓶子和燃料 数论/裴蜀定理

    题目 Description jyy就一直想着尽快回地球,可惜他飞船的燃料不够了. 有一天他又去向火星人要燃料,这次火星人答应了,要jyy用飞船上的瓶子来换.jyy 的飞船上共有 N个瓶子(1< ...

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

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

  3. bzoj 2257: [Jsoi2009]瓶子和燃料(裴蜀定理)

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

  4. BZOJ 2257: [Jsoi2009]瓶子和燃料

    题目大意: 有n个数,选择k个数,最大化这些数通过加减能得到的最小的正整数. 题解: 这些数通过加减能得到的最小的数为他们的最大公约数. 题目要求n个数字中选择k个使得他们的最大公约数最大. 枚举所有 ...

  5. [luogu4571 JSOI2009] 瓶子和燃料 (数论)

    传送门 Solution 题目说的很迷,但可以发现两个瓶子互相倒最少是容积的gcd 那么题目就转化为求其中选k个瓶子gcd的最大值,这个可以分解因数,枚举因数得到 Code //By Menteur_ ...

  6. [JSOI2009]瓶子和燃料【数论】

    Pro QwQ Sol 手推几组数据就可以发现:答案即为k个数的gcd 所以爆搜出k个出,再暴力求gcd可以过部分数据-- 正解好像和裴蜀定理有关:把n个数的因子都求出来,找出满足因子个数大于等于k的 ...

  7. (裴蜀定理)ax + by = m 有解,当且仅当 m 是 gcd(a,b) 的倍数

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

  8. 2019.4.summary

    2019.4.1 BZOJ1061: [Noi2008]志愿者招募 真心有点难QAQ https://www.byvoid.com/zhs/blog/noi-2008-employee 看void爷的 ...

  9. 简述linux的系统组成,Linux系统组成

    1 系统组成 BootLoader:操作系统引导程序 内核: 文件系统:应用程序(用户开发的.网上下载的) 2 安装USB驱动 dongry@d-linux:~$ insmod usb_dnw.ko ...

最新文章

  1. 论文阅读工具ReadPaper
  2. 不错html5画布效果,可惜网站不需要。亲们,可以看一下~
  3. The server sent a disconnect packet.Received ieof for nonexistent channel 0. (code: 2)
  4. 深度学习之循环神经网络(9)LSTM层使用方法
  5. python中表示空类型的是_python中怎么表示空值
  6. ThinkPHP6项目基操(8.多应用模式)
  7. Gmuplolader1.0正式上线,欢迎试用!!!
  8. springSecurity 登录以及用户账号密码解析原理
  9. DevExpress 用户控件 分页(中)
  10. 非集成搭建wampp环境
  11. GitLab版本管理(转)
  12. 【190112】VC++ 电话簿通讯录程序源代码
  13. arm linux开发板tar移植
  14. 卢菲菲记忆课程(一、了解记忆认识大脑)
  15. c14cpm和dpm怎么换算_DPM7001液体闪烁计数器
  16. 用四阶龙格库塔法(RK4)求解二阶微分方程
  17. 删除用户 userdel
  18. Python爱心表白,快去发给你心仪的人叭~
  19. 炉石传说 账号老是重新连接服务器,炉石传说无法连接服务器怎么办 炉石传说无法连接请检查网络连接是什么原因...
  20. 使用redis incr处理并发,存在死锁问题

热门文章

  1. 登录日志怎么实现_运维必看:日志标准化必须面对的 4 类问题
  2. Can't be easier
  3. 2018 CodeM初赛B轮:D.神奇盘子
  4. python opencv 利用 GrabCut 算法(opencv已经实现)从图像中分离出前景
  5. [深度学习] 深度学习常见概念
  6. jquery系列教程7-自定义jquery插件全解:对象函数、全局函数、选择器
  7. linux下复制catalog信息指令,基於Linux下catalog方式的 Oracle 備份策略(RMAN)
  8. linux 路由添加
  9. 怎样把一个字典的数据添加到另一个字典中?
  10. if __name__ == __main__如何正确理解