蓝桥 卡片

题目描述

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

小蓝有很多数字卡片,每张卡片上都是数字 00 到 99。 小蓝准备用这些卡片来拼一些数,他想从 11 开始拼出正整数,每拼一个, 就保存起来,卡片就不能用来拼其它数了。 小蓝想知道自己能从 11 拼到多少。 例如,当小蓝有 3030 张卡片,其中 00 到 99 各 33 张,则小蓝可以拼出 11 到 1010, 但是拼 1111 时卡片 11 已经只有一张了,不够拼出 1111。 现在小蓝手里有 00 到 99 的卡片各 20212021 张,共 2021020210 张,请问小蓝可以从 11 拼到多少? 提示:建议使用计算机编程解决问题

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 128M
    #include<iostream>
    #include<cstring>
    using namespace std;
    int main()
    {
        int a[10];
        //memset(a, 0, sizeof(a));//只能初始化为0;
        for (int p = 0; p < 10; p++)
        {
            a[p] = 2021;
        }
        int i = 1;
        while (i)
        {
            int j = i;
            while (j)
            {
                int k = j % 10;
                a[k]--;
                if (a[k] < 0)
                {
                    cout << i - 1;
                    exit(0);//可以直接用exit(0)退出;
                }
                j /= 10;
            }
            
            i++;
        }
        
        return 0;
    }

     

posted @ 2022-03-21 21:55  lvxinnnnnn  阅读(109)  评论(0)    收藏  举报