zoukankan      html  css  js  c++  java
  • Codeforces Round #592 (Div. 2)【C题】{补题ING}

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

     1 /*
     2  
     3 x*w+y*d=p;
     4 x*w+(Kw+y)*d
     5 (x+d)*w+d;
     6 
     7 x+y+z=n;
     8  
     9 */
    10 #include<bits/stdc++.h>
    11  
    12 using namespace std;
    13 #define int long long
    14 signed main(){
    15     int n,p,w,d;cin>>n>>p>>w>>d;
    16     for(int y=0;y<=w;y++){
    17         int temp=p-y*d;
    18         if(temp%w)
    19             continue;
    20         int x=temp/w;
    21         if(x+y<=n&&x>=0&&y>=0&&(n-x-y)>=0){
    22             cout<<x<<" "<<y<<" "<<n-x-y;
    23             return 0; 
    24         }
    25     }
    26     cout<<"-1";
    27     return 0;
    28 }
  • 相关阅读:
    常见模块和包
    二分查找算法
    常见内置函数
    Django总目录
    nginx配置站点
    Arduino语言
    Python连接Arduino的方法
    机器人学习
    Redis
    arduino总目录
  • 原文地址:https://www.cnblogs.com/pengge666/p/11827522.html
Copyright © 2011-2022 走看看