zoukankan      html  css  js  c++  java
  • [CF1478B] Nezzar and Lucky Number

    [CF1478B] Nezzar and Lucky Number - 结论

    Description

    给定正整数 (d(1le dle 9)),如果正整数 (k) 的十进制表示中含有数码 (d),我们就把 (k) 称为“幸运数”。现在,给你一个长度为 (q(1le qle 10^{4})) 的数组 (a_{1},a_{2},…,a_{q}(1le a_{i}le 10^{9})),请依次判断数组的每个元素能否表示为若干个“幸运数”之和的形式,如果能,输出 YES,否则输出 NO

    Solution

    虽然难度低但还是有点意思的

    如果一个数大于等于 10d,那么疯狂拆 d,直到它在 10d~11d-1 之间,这个也是有 d 的

    一个含 d 的数,一定可以拆成若干个 d 和若干个 10

    反过来,任何一个含有若干个 d 和若干个 10 的数都可以组成一个所要求的,可以分解为若干个幸运数之和的数

    所以对于小于 10d 的,我们只需要判断,是否可以通过若干个 10 和若干个 d 组成这个数即可。

    #include <bits/stdc++.h>
    using namespace std;
    
    #define int long long
    
    signed main()
    {
        int t;
        cin >> t;
    
        while (t--)
        {
            int n, d;
            cin >> n >> d;
    
            while (n--)
            {
                int x;
                cin >> x;
    
                if (x >= 10 * d)
                    cout << "YES" << endl;
                else
                {
                    int flag = 0;
                    for (int i = 1; i <= 9; i++)
                    {
                        if (x - i * d >= 0 && (x - i * d) % 10 == 0)
                        {
                            flag = 1;
                        }
                    }
                    cout << (flag ? "YES" : "NO") << endl;
                }
            }
        }
    }
    
  • 相关阅读:
    递归和this指向
    作用域,闭包
    三种存储方式
    事件流,冒泡,捕获,事件委托
    centos添加登陆成功提示消息
    centos7下安装oracle11g R2报错
    linux下从home分区扩展到根分区
    linux下搭建mongodb副本集
    linux服务下使用nginx之后数据导出超时
    linux下搭建git服务器
  • 原文地址:https://www.cnblogs.com/mollnn/p/14460155.html
Copyright © 2011-2022 走看看