NC204271. 斩杀线计算大师
描述
输入描述
一行四个整数分别表示.
输出描述
一行输出三个整数分别表示.
示例1
输入:
3 4 5 20
输出:
4 2 0
C(clang 3.9) 解法, 执行用时: 8ms, 内存消耗: 376K, 提交时间: 2020-04-01 20:03:17
#include<stdio.h> main() { int a,b,c; int x=0,y=0,z=0; long long k; scanf("%d%d%d%lld",&a,&b,&c,&k); for(x=k/a;x>=0;x--) { for(y=(k-x*a)/b;y>=0;y--) { for(z=(k-x*a-y*b)/c;z>=0;z--) { if(a*x+b*y+c*z==k) { printf("%d %d %d",x,y,z); return 0; } } } } }
C++(clang++11) 解法, 执行用时: 155ms, 内存消耗: 408K, 提交时间: 2020-11-10 16:23:30
#include<iostream> using namespace std; int main(){ long long a,b,c,k; cin>>a>>b>>c>>k; for(long long i=0;i*c<=k;++i){ for(long long j=0;j*b<=k;++j){ if((k-i*c-j*b)%a==0){ cout<<(k-i*c-j*b)/a<<" "<<j<<" "<<i; return 0; } } } }