买不到的数目c++

题目

输入样例:

4 7

输出样例:

17

思路

一个字,猜。 

        一开始不知道怎么做的时候,想要暴力枚举对于特定的包装n, m,最大不能买到的数量maxValue是多少,然后观察性质做优化。那么怎么确定枚举结果是否正确呢?

        题目说“一定有解”,那么怎样的数据才有解?当gcd(n, m) 大于1,比如gcd(n, m) = 2,只要糖果的数量是2的倍数,那么这个数就能用n和m包装完,而糖果的数量不是2的倍数,就不能用n和m包装完,因此不存在最大不能买到的数量。而当gcd(n, m) 等于1时,必定有最大不能买到的数量。证明可以参考这篇文章:证明。

暴力代码如下:

#include<bits/stdc++.h>
using namespace std;

bool dfs(int d, int p, int q)
{
  if (d == 0) return true;
  else if (d < 0) return false;
  
  if(dfs(d - p, p, q))return true;
  if(dfs(d - q, p, q))return true;
  return false;
}

int main()
{
  int n, m;
  cin >> n >> m;
  
  /*
  求对于特定的包装n, m,最大不能买到的数量maxValue;先假定对任意的n, m,
    最大不能买的数不超过1000,如果结果maxValue超过1000,再扩大i的范围
  */
  int maxValue = 0;
  for (int i = 1; i <= 1000; i ++)
  {
    //若i不能买到
    if(!dfs(i, n, m))maxValue = i;
  }
  
  cout << maxValue;
  return 0;
}

以下是计算的一些样例:

//样例1
n m res
2 7 5
3 7 11
4 7 17
5 7 23
//每当n加1,那么res就加6,如果建立n和res的等式,res应该是n的6倍。那么有res = 6n + x;加上x是为了//让等式成立,代入得x = -7
res = 6n - 7

//结果和上面类似
//样例2
n m res
2 5 3
3 5 7
4 5 11
res = 4n - 5
.
.
.
//猜公式
res = (m - 1)n - m

代码
#include<bits/stdc++.h>
using namespace std;

int main()
{
  int n, m;
  cin >> n >> m;
  cout << (m - 1) * n - m;
  return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/437403.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

「词令官网直达」网址导航分享5个最具权威的研究生考研信息平台官方网站

分享5个最具权威的研究生考研信息平台网站 1、中国研究生招生信息网 官网直达入口&#xff1a;打开「词令」关键词口令直达工具&#xff0c;输入词令「中国研究生招生信息网」搜索直达进入中国研究生招生信息网官方网站&#xff1b; 中国研究生招生信息网&#xff08;简称研…

npm ERR! code ERR_INVALID_URL报错解决

这个报错是URL错误&#xff0c;要排除两个点 npm的registry有没有搞错&#xff0c;也就是npm源有没有搞错 打开文件C:/User/<用户名>/.npmrc查看npm设置查看registry的设置有没有格式错误正确设置格式&#xff1a;registry"https://registry.npmmirror.com"或…

搜维尔科技:动作捕捉与数字时尚:Wondar Studios欧莱雅项目

来自意大利的Wondar Studios工作室&#xff0c;是一家制作与动作捕捉技术相关软件和内容的公司&#xff0c;其出品的三维角色动画均由专业动捕系统真实录制制作。 我们很高兴与大家分享Wondar Studios最新的动捕项目&#xff0c;该项目带来了身临其境的虚拟现实体验。他们与巴…

【Spring高级】第2讲:容器实现类

目录 BeanFactory实现BeanDefinition后置处理器单例bean创建后置处理器顺序总结 ApplicationContext实现ClassPathXmlApplicationContextFileSystemXmlApplicationContextAnnotationConfigApplicationContextAnnotationConfigServletWebServerApplicationContext BeanFactory实…

stable diffusion的额外信息融入方式

conditioning怎么往sd中添加&#xff0c;一般有三种&#xff0c;一种是直接和latent拼一下&#xff0c;另外很多是在unet结构Spatialtransformers上加&#xff0c;和文本特征一样&#xff0c;通过cross-attention往unet上加&#xff0c;这里还需要注意一点&#xff0c;在文本嵌…

2024主流测试工具测评,总有一款适合你!

大家好&#xff01;我是测试元宝~ 在软件开发周期中&#xff0c;测试是确保产品质量的关键环节。随着企业对于软件质量的要求日益提升&#xff0c;测试人员面临着前所未有的挑战&#xff0c;“工欲善其事必先利其器”&#xff0c;选择一款高效、实用的软件测试工具&#xff0c…

Vue.js 修饰符:精准控制组件行为

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

《幸运的基督徒》Python

题目描述 有15个基督徒和15个非基督徒在海上遇险&#xff0c; 为了能让一部分人活下来不得不将其中15个人扔到海里面去&#xff0c; 有个人想了个办法就是大家围成一个圈&#xff0c;由某个人开始从1报数&#xff0c; 报到9的人就扔到海里面&#xff0c;他后面的人接着从1开始报…

★【完全二叉树】【层序遍历】判断是否是完全二叉树

【完全二叉树】【层序遍历】判断是否是完全二叉树 解法1 层序遍历 **判断是不是完全二叉树思路&#xff1a;**:star: ---------------&#x1f388;&#x1f388;题目链接&#x1f388;&#x1f388;------------------- 解法1 层序遍历 判断是不是完全二叉树思路&#xff1a…

day28【LeetCode力扣】383.赎金信

day28【LeetCode力扣】383.赎金信 以后我们每期附张图啦&#xff5e;&#xff5e;&#xff5e; 1.题目描述 附上题目链接&#xff1a;赎金信 给你两个字符串&#xff1a;ransomNote 和 magazine &#xff0c;判断 ransomNote 能不能由 magazine 里面的字符构成。 如果可以…

一篇文章教会你Python+selenium自动化生成测试报告

前言 批量执行完用例后&#xff0c;生成的测试报告是文本形式的&#xff0c;不够直观&#xff0c;为了更好的展示测试报告&#xff0c;最好是生成HTML格式的。 unittest里面是不能生成html格式报告的&#xff0c;需要导入一个第三方的模块&#xff1a;HTMLTestRunner 一、导…

python创建和上传自己的PyPI库

文章目录 创建和上传自己的PyPI库pypi准备文件制作PyPI包在上传前&#xff0c;先本地验证注册PyPI账户上传pypi判断python包质量之 SourceRankLibraries.io 参考 创建和上传自己的PyPI库 pypi 官方地址&#xff1a;https://pypi.org/ Python中我们经常会用到第三方的包&…

使用nginx输入端口号显示404

输入对应的端口号显示404 先检查当前nginx文件夹的路径是没有中文的查看是否没有开启nginx&#xff1a;ctrlaltdelete打开任务管理器&#xff0c;看看有没有nginx.exe进程&#xff08;一般是有两个进程&#xff09;如果没有进程说明没有打开nginx&#xff0c;查看端口号是否被…

金三银四求职季,这个AI神器助你斩获高薪Offer!

金三银四将至&#xff0c;又到了求职的高峰季&#xff0c;不管是招聘方&#xff0c;还是求职者&#xff0c;肉眼可见都会忙到飞起。 过去准备招聘 JD 或求职简历&#xff0c;都依赖人工编辑和包装&#xff0c;而眼下已进入 AI 时代&#xff0c;善用 AI 的人&#xff0c;无形中…

可惜了微软将终止对 Android Windows 子系统(WSA)的支持。因此,自 2035 年 3 月 5 日起,Windows 上的 WSA拜拜啦

微软将终止对安卓子系统WSA的支持。因此自 2035 年 3 月 5 日起&#xff0c;Windows上依赖于 WSA 的所有应用程序和游戏将不再受支持 可惜了! 多么好用的功能! 微软决定放弃了&#xff01; 还没有好好用起来&#xff0c;就结束了… 世界变化太快&#xff0c;都来不及反应了…

【HTML】HTML基础2(一些常用标签)

目录 例子 首先是网页图标 然后是一些常用标签 插入图片 例子 <!DOCTYPE html> <html><head><link rel"icon" href"img/银河护卫队-星爵.png" type"image/x-icon"><meta charset"utf-8"><title>…

windows机U盘/硬盘直接连接虚拟机失败问题解决

0问题描述 物理机为Windows操作系统&#xff0c;安装VMare后加载了Ubuntu操作系统的虚拟机&#xff1b;外接存储插入电脑&#xff0c;想直接连接虚拟机向虚拟机中拷贝文件&#xff0c;但是连接失败。如图&#xff1a; 1&#xff09;在弹框中选择虚拟机然后点击确定&#xff1b…

Unity性能优化篇(十二) 音频优化之导入音频后的属性设置

Unity支持后缀为.wav、.ogg、.mp3的音频文件&#xff0c;但建议使用.wav&#xff0c;因为Unity对它的支持特别好。 注意&#xff1a;Unity在构建项目时总是会自动重新压缩音频文件&#xff0c;因此无需刻意提前压缩一个音频文件再导入Unity&#xff0c;因为这样只会降低该音频文…

Redis几大数据类型

使用场景&#xff1a; Redis 数据类型及应用场景https://segmentfault.com/a/1190000012212663 Redis的五种常用数据类型在实际应用中有丰富的使用场景&#xff1a; 字符串&#xff08;String&#xff09; 缓存&#xff1a;存储经常查询但不频繁修改的数据&#xff0c;如网页…

计算机网络 八股

计算机网络体系结构 OSI&#xff1a;物理层、数据链路层、网络层、运输层、会话层、表示层、应用层