思路:x,y,z肯定不为负数xw+dy=p,直接枚举系数较小的y即可,y的范围:y<w,因为大于w的时候,不如去增加x,这样x+y的和还能保持尽可能小.

 /*

 x*w+y*d=p;
x*w+(Kw+y)*d
(x+d)*w+d; x+y+z=n; */
#include<bits/stdc++.h> using namespace std;
#define int long long
signed main(){
int n,p,w,d;cin>>n>>p>>w>>d;
for(int y=;y<=w;y++){
int temp=p-y*d;
if(temp%w)
continue;
int x=temp/w;
if(x+y<=n&&x>=&&y>=&&(n-x-y)>=){
cout<<x<<" "<<y<<" "<<n-x-y;
return ;
}
}
cout<<"-1";
return ;
}

最新文章

  1. Beta阶段第四次Scrum Meeting
  2. underscore.js依赖库函数分析二(查找)
  3. .NET中异常处理的最佳实践(转)
  4. java读取各类型的文件
  5. 小心!#define max(a,b) a&gt;b?a:b
  6. python(学习之路一)
  7. 用Java开源项目JOONE实现人工智能编程
  8. Android 日夜间切换Demo
  9. 【linux之find及awk】
  10. 【转载】一行代码加载网络图片到ImageView——Android Picasso
  11. 学习React系列(三)——Refs和Dom
  12. 在MongoDB中创建一个索引而性能提升1000倍的小例子
  13. 《用Python解决数据结构与算法问题》在线阅读
  14. vue 构建项目遇到的请求本地json问题
  15. Linux上的一些基本常用命令
  16. bzoj2190
  17. django-强大的ORM
  18. tomcat错误信息解决方案【严重:StandardServer.await: create[8005]】
  19. vi 中大小写转换功能
  20. leetcode 缺失数字

热门文章

  1. python学习-11 运算符2
  2. go 常量定义和使用
  3. 原生js分页器插件
  4. 安装本地jar包
  5. [异步请求]ajax、axios、fetch之间的详细区别以及优缺点
  6. LeetCode 1047. Remove All Adjacent Duplicates In String
  7. C# Unix时间戳和DateTime类型相互转换
  8. ASP.NET MVC或者.net Core mvc 页面使用富文本控件的 保存问题
  9. D盘Program Files 文件夹里文件不显示,没隐藏。怎么才能显示出来?
  10. C#通过重载构造函数传递参数、实现两个窗体下的方法的互相调用