首页 > 其他 > 详细

题解 AT3853 【Otoshidama】

时间:2020-02-27 14:24:34      阅读:58      评论:0      收藏:0      [点我收藏+]

题目传送门

暴力枚举题。

分析

Step 1:定义两个变量,\(n\)\(y\)

    int n,y;
    cin>>n>>y;

Step 2:使用二重循环进行暴力枚举。

    for(int i=0;i<=n;i++)
        for(int j=0;j<=n-i;j++)
            if(i*10000+j*5000+(n-i-j)*1000==y)
                cout<<i<<' '<<j<<' '<<n-i-j<<'\n',exit(0);

在这一步上很多大佬使用了三重循环,其实用二重循环就可以解决了。

Step 3:找完了还是没有符合要求的数。直接输出-1 -1 -1并结束程序。

    cout<<"-1 -1 -1\n";

完整代码

#include <bits/stdc++.h>
using namespace std;
int main()
{
    int n,y;
    cin>>n>>y;
    for(int i=0;i<=n;i++)
        for(int j=0;j<=n-i;j++)
            if(i*10000+j*5000+(n-i-j)*1000==y)
                cout<<i<<' '<<j<<' '<<n-i-j<<'\n',exit(0);
    cout<<"-1 -1 -1\n";
    return 0;
}

若题解有问题请私信我。

题解 AT3853 【Otoshidama】

原文:https://www.cnblogs.com/tearing/p/12371856.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!